新建數(shù)據(jù)表
使用Navicat for mysql之類的工具新建數(shù)據(jù)
- 新建名為my_news_test的數(shù)據(jù)庫
- 在my_news_test中使用如下代碼創(chuàng)建數(shù)據(jù)表
CREATE TABLE `node_user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(30) DEFAULT NULL,
`age` int(8) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;
INSERT INTO `node_user` VALUES ('1', 'admin', '32');
INSERT INTO `node_user` VALUES ('2', 'dans88', '45');
INSERT INTO `node_user` VALUES ('3', '張三', '35');
INSERT INTO `node_user` VALUES ('4', 'ABCDEF', '88');
INSERT INTO `node_user` VALUES ('5', '李小二', '65');
創(chuàng)建數(shù)據(jù)表
創(chuàng)建完成后刷新數(shù)據(jù)庫贮匕,可以看到新增了一個表,且有五條數(shù)據(jù)
查看數(shù)據(jù)
接下來,就要開始使用nodejs來操作了
安裝node-mysql
npm install mysql
測試連接
在根目錄下新建test.js,測試是否能成功連接到mysql,js代碼如下
var mysql = require('mysql');
var TEST_DATABASE = 'my_news_test';
var TEST_TABLE = 'node_user';
//創(chuàng)建連接
var client = mysql.createConnection({
user: 'root',
password: 'angel',
});
client.connect();
client.query("use " + TEST_DATABASE);
client.query(
'SELECT * FROM '+TEST_TABLE,
function selectCb(err, results, fields) {
if (err) {
throw err;
}
if(results)
{
for(var i = 0; i < results.length; i++)
{
console.log("%d\t%s\t%s", results[i].id, results[i].name, results[i].age);
}
}
client.end();
}
);
在cmd中執(zhí)行上面的js文件,打印如下為正常
測試連接
增
新建insert.js文件,代碼如下
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : 'angel',
port: '3306',
database: 'my_news_test',
});
connection.connect();
var userAddSql = 'INSERT INTO node_user(id,name,age) VALUES(0,?,?)';
var userAddSql_Params = ['Wilson', 55];
//增 add
connection.query(userAddSql,userAddSql_Params,function (err, result) {
if(err){
console.log('[INSERT ERROR] - ',err.message);
return;
}
console.log('-------INSERT----------');
//console.log('INSERT ID:',result.insertId);
console.log('INSERT ID:',result);
console.log('#######################');
});
connection.end();
增
再打開Navicat for mysql查看數(shù)據(jù)庫喉钢,是否成功插入一條數(shù)據(jù)
成功插入一條數(shù)據(jù)
改
新建名為update.js的文件,代碼如下
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : 'angel',
port: '3306',
database: 'my_news_test',
});
connection.connect();
var userModSql = 'UPDATE node_user SET name = ?,age = ? WHERE id = ?';
var userModSql_Params = ['Hello World',99,6];
//改 up
connection.query(userModSql,userModSql_Params,function (err, result) {
if(err){
console.log('[UPDATE ERROR] - ',err.message);
return;
}
console.log('----------UPDATE-------------');
console.log('UPDATE affectedRows',result.affectedRows);
console.log('******************************');
});
connection.end();
運行上面的代碼
執(zhí)行代碼
刷新Navicat for mysql良姆,查看數(shù)據(jù)是否已被成功修改
修改成功
查
新建query.js文件肠虽,代碼如下:
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : 'angel',
port: '3306',
database: 'my_news_test',
});
connection.connect();
var userGetSql = 'SELECT * FROM node_user';
//查 query
connection.query(userGetSql,function (err, result) {
if(err){
console.log('[SELECT ERROR] - ',err.message);
return;
}
console.log('---------------SELECT----------------');
console.log(result);
console.log('$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$');
});
connection.end();
執(zhí)行代碼
刪
新建del.js文件,代碼為
var mysql = require('mysql');
var connection = mysql.createConnection({
host : '127.0.0.1',
user : 'root',
password : 'angel',
port: '3306',
database: 'my_news_test',
});
connection.connect();
var userDelSql = 'DELETE FROM node_user WHERE id = 5';
//?
connection.query(userDelSql,function (err, result) {
if(err){
console.log('[DELETE ERROR] - ',err.message);
return;
}
console.log('-------------DELETE--------------');
console.log('DELETE affectedRows',result.affectedRows);
console.log('&&&&&&&&&&&&&&&&&');
});
connection.end();
執(zhí)行代碼
執(zhí)行成功
刷新Navicat for mysql玛追,查看數(shù)據(jù)是否已被刪除
查看是否刪除成功