安裝mysql
$ npm isntall mysql
連接數據庫
需要根據實際配置修改數據庫用戶名、及密碼及數據庫名
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost',
user: '***', // 用戶名
password: '***', // 密碼
port: '3306',
database: 'node_mysql_test' // 數據庫名稱
});
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("連接失敗");
return;
}
console.log(result);
console.log("連接成功");
});
connection.end(); // 結束連接
在 MySQL 數據庫中創建初始數據
終端輸入:
mysql -u 【數據庫名稱】 -p
mysql> create database node_mysql_test default character set utf8 default collate utf8_general_ci;
mysql> use node_mysql_test;
mysql> source 『將users.sql文件直接拖拽至終端,自動補全其文件目錄』
將users.sql文件如下:
SET NAMES utf8;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for `users`
-- ----------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(20) NOT NULL DEFAULT '' COMMENT '姓名',
`email` varchar(255) NOT NULL DEFAULT '',
`age` int(11) NOT NULL DEFAULT '0' COMMENT '年齡',
`city` char(10) NOT NULL DEFAULT '' COMMENT '城市',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of `users`
-- ----------------------------
BEGIN;
INSERT INTO `users` VALUES ('1', '張三', 'zhangsan@qq.com', '18', '上海'), ('2', '李四', '1234@163.com', '23', '重慶'), ('3', '王五', 'abc@sina.cn', '33', '青島'), ('4', '馬六', '666@qq.com', '19', '南京');
COMMIT;
SET FOREIGN_KEY_CHECKS = 1;
查詢數據
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
});
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("連接失敗");
return;
}
console.log(result);
console.log("連接成功");
});
/**
* -------------------
* 查詢數據
* -------------------
*/
let selectSql = 'SELECT * FROM users';
connection.query(selectSql, (err, result) => {
if (err) {
console.log('[SELECT 失敗] - ', err.message);
return;
}
console.log('--------------SELECT------------');
console.log('查詢成功:',result);
console.log('--------------------------\n\n');
});
connection.end();
增加數據
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
});
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("連接失敗");
return;
}
console.log(result);
console.log("連接成功");
});
/**
* -------------------
* 增加數據
* -------------------
*/
let addSql = 'INSERT INTO users(Id,name,email,age,city) VALUES(0,?,?,?,?)';
let addSqlParams = ['趙七', '777@qq.com', '22', '大連'];
connection.query(addSql, addSqlParams, (err, result) => {
if (err) {
console.log('[增加失敗] - ', err.message);
return;
}
console.log('--------------INSERT-------------');
console.log('增加成功 ID:',result.insertId);
console.log('增加成功:', result);
console.log('--------------------------------\n\n');
});
connection.end();
更新數據
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
});
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("連接失敗");
return;
}
console.log(result);
console.log("連接成功");
});
/**
* -------------------
* 更新數據
* -------------------
*/
let modSql = 'UPDATE users SET name = ?,email = ? WHERE Id = ?';
let modSqlParams = ['Tom', 'tom@qq.com', 7];
connection.query(modSql, modSqlParams, (err, result) => {
if (err) {
console.log('[更新失敗] - ', err.message);
return;
}
console.log('----------UPDATE---------------');
console.log('更新成功', result.affectedRows);
console.log('-------------------------------\n\n');
});
connection.end();
刪除數據
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost',
user: '***',
password: '***',
port: '3306',
database: 'node_mysql_test'
});
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("連接失敗");
return;
}
console.log(result);
console.log("連接成功");
});
/**
* -------------------
* 刪除數據
* -------------------
*/
let delSql = 'DELETE FROM users where id=4';
connection.query(delSql, (err, result) => {
if (err) {
console.log('[刪除失敗] - ', err.message);
return;
}
console.log('--------DELETE---------------');
console.log('刪除成功', result.affectedRows);
console.log('------------------------\n\n');
});
connection.end();
