Node.js开发 ---- 连接MySql数据库

本文介绍了如何使用Node.js连接MySQL数据库的过程,包括安装MySQL、创建数据库表、执行基本的SQL语句以及通过Node.js应用程序进行数据库操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.下载安装mysql(版本用的5.1), 设置环境变量


2.启动mysql

E:\mysql\bin\net start mysql


3.建立数据库test

root@host# mysql -u root -p
Enter password:*******
mysql> use test;
Database changed
mysql> CREATE TABLE runoob_tbl(
   -> runoob_id INT NOT NULL AUTO_INCREMENT,
   -> runoob_title VARCHAR(100) NOT NULL,
   -> runoob_author VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( runoob_id )
   -> );
Query OK, 0 rows affected (0.16 sec)
mysql>



4.nodejs连接mysql

npm install

npm install mysql


app.js

//连接数据库
var mysql = require('mysql');
var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: '',
    database:'test'
});

connection.connect();
//查询
connection.query('select * from `stu`', function(err, rows, fields) {
    if (err) throw err;
    console.log('查询结果为: ', rows);
});
//关闭连接
connection.end();

node app.js




node后台一直运行

$ sudo npm install forever -g   #安装

$ forever start app.js          #启动
$ forever stop app.js           #关闭
$ forever start -l forever.log -o out.log -e err.log app.js   #输出日志和错误


附:常用SQL语句



数据操作语言 (DML)  :

SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据


数据定义语言 (DDL) :
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引


获取某一列

SELECT id FROM stu;

获取多列

SELECT id,name FROM stu;

获取所有列

SELECT * FROM stu;


插入新的行

INSERT INTO stu VALUES ("1","weijia");

INSERT INTO stu (id,name) VALUES ("1","weijia");


删除某一行

DELETE FROM stu WHERE id = '1';

删除所有行

DELETE FROM stu ;

DELETE * FROM stu ;


更新

UPDATE k SET  name = 'Wilson' WHERE  id = '3';


去重

SELECT DISTINCT id FROM stu;


WHERE条件

SELECT * FROM stu WHERE id = 3


AND 和 OR 多个条件

使用 AND 来显示所有姓为 "Carter" 并且名为 "Thomas" 的人:
SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'

使用 OR 来显示所有姓为 "Carter" 或者名为 "Thomas" 的人:
SELECT * FROM Persons WHERE firstname='Thomas' OR lastname='Carter'

也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式):
SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'


ORDER BY 排序

SELECT id,name FROM stu ORDER BY id;

倒序

SELECT id,name FROM stu ORDER BY id DESC;

id倒序 name顺序

SELECT id,name FROM stu ORDER BY id DESC,name ASC;


选取头几条记录

SELECT TOP 2 * FROM stu

SELECT TOP 50 PERCENT * FROM stu


选组以N开头

SELECT * FROM stu WHERE name LIKE 'N%'


选组以g结尾
SELECT * FROM stu WHERE name LIKE '%g'


选组包含sss
SELECT * FROM stu WHERE name LIKE '%sss%'


选组不包含sss
SELECT * FROM stu WHERE name NOT LIKE '%sss%'


Node.js开发 ---- 常用SQL语句


数据操作语言 (DML)  :

SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据


数据定义语言 (DDL) :
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引


获取某一列

SELECT id FROM stu;

获取多列

SELECT id,name FROM stu;

获取所有列

SELECT * FROM stu;


插入新的行

INSERT INTO stu VALUES ("1","weijia");

INSERT INTO stu (id,name) VALUES ("1","weijia");


删除某一行

DELETE FROM stu WHERE id = '1';

删除所有行

DELETE FROM stu ;

DELETE * FROM stu ;


更新

UPDATE k SET  name = 'Wilson' WHERE  id = '3';


去重

SELECT DISTINCT id FROM stu;


WHERE条件

SELECT * FROM stu WHERE id = 3


AND 和 OR 多个条件

使用 AND 来显示所有姓为 "Carter" 并且名为 "Thomas" 的人:
SELECT * FROM Persons WHERE FirstName='Thomas' AND LastName='Carter'

使用 OR 来显示所有姓为 "Carter" 或者名为 "Thomas" 的人:
SELECT * FROM Persons WHERE firstname='Thomas' OR lastname='Carter'

也可以把 AND 和 OR 结合起来(使用圆括号来组成复杂的表达式):
SELECT * FROM Persons WHERE (FirstName='Thomas' OR FirstName='William')
AND LastName='Carter'


ORDER BY 排序

SELECT id,name FROM stu ORDER BY id;

倒序

SELECT id,name FROM stu ORDER BY id DESC;

id倒序 name顺序

SELECT id,name FROM stu ORDER BY id DESC,name ASC;


选取头几条记录

SELECT TOP 2 * FROM stu

SELECT TOP 50 PERCENT * FROM stu


选组以N开头

SELECT * FROM stu WHERE name LIKE 'N%'


选组以g结尾
SELECT * FROM stu WHERE name LIKE '%g'


选组包含sss
SELECT * FROM stu WHERE name LIKE '%sss%'


选组不包含sss
SELECT * FROM stu WHERE name NOT LIKE '%sss%'


Node.js开发 ---- 常用SQL语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值