使用Node.js进行对数据库的CRUD操作

来源:互联网 发布:ubuntu ssh 离线安装包 编辑:程序博客网 时间:2024/05/19 07:08

1.什么是Node.js?

简单的说 Node.js 就是运行在服务端的 JavaScript。
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。

2.什么是数据库?

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,
数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

3.再次之前默认是都基本了解过Node.js以及数据库的相关知识。进入正题!!—–》》


数据库连接
安装驱动
var mysql = require(‘mysql’);
var connection = mysql.createConnection({
host : ‘localhost’,
user : ‘root’,
password : ‘123456’,
database : ‘test’
});
connection.connect();
connection.query(‘SELECT 1 + 1 AS solution’, function (error, results, fields) {
if (error) throw error;
console.log(‘The solution is: ‘, results[0].solution);
});
测试运行:结果如下:
The solution is: 2


  1. 查询数据

    var mysql = require(‘mysql’);
    var connection = mysql.createConnection({
    host : ‘localhost’,
    user : ‘root’,
    password : ‘123456’,
    port: ‘3306’,
    database: ‘test’,
    });
    connection.connect();
    var sql = ‘SELECT * FROM student’;
    //查询
    connection.query(sql,function (err, result) {
    if(err){
    console.log(‘[SELECT ERROR] - ‘,err.message);
    return;
    }
    console.log(result);
    });
    connection.end();
    测试运行:结果如下:
    [ RowDataPacket { s_id: 1, s_name: ‘张三’, s_number: ‘111111’, s_password: ‘1234’ },
    RowDataPacket { s_id: 2, s_name: ‘李四’, s_number: ‘222222’, s_password: ‘123’ },
    RowDataPacket { s_id: 3, s_name: ‘王五’, s_number: ‘333333’, s_password: ‘12345’ } ]


2.插入数据

var mysql = require(‘mysql’);
var connection = mysql.createConnection({
host : ‘localhost’,
user : ‘root’,
password : ‘123456’,
port: ‘3306’,
database: ‘test’,
});
connection.connect();
var insertSql = ‘INSERT INTO student(s_id,s_name,s_number,s_password) VALUES(?,?,?,?)’;
var insertSqlParams = [‘4’, ‘某某’,’444444’, ‘110’];
//增加
connection.query(insertSql,insertSqlParams,function (err, result) {
if(err){
console.log(‘[INSERT ERROR] - ‘,err.message);
return;
}
console.log(‘INSERT ID:’,result);
});
connection.end();
测试运行:结果如下:
INSERT ID: OkPacket {
fieldCount: 0,
affectedRows: 1,
insertId: 4,
serverStatus: 2,
warningCount: 0,
message: ”,
protocol41: true,
changedRows: 0 }


3.更新数据

var mysql = require(‘mysql’);
var connection = mysql.createConnection({
host : ‘localhost’,
user : ‘root’,
password : ‘123456’,
port: ‘3306’,
database: ‘test’,
});
connection.connect();
var sql = ‘UPDATE student SET s_name = ? WHERE s_id = ?’;
var sqlparams = [‘某某某’,4];
//修改
connection.query(sql,sqlparams,function (err, result) {
if(err){
console.log(‘[UPDATE ERROR] - ‘,err.message);
return;
}
console.log(‘UPDATE affectedRows’,result.affectedRows);
});
connection.end();
测试运行:结果如下:
UPDATE affectedRows 1


4.删除数据

var mysql = require(‘mysql’);
var connection = mysql.createConnection({
host : ‘localhost’,
user : ‘root’,
password : ‘123456’,
port: ‘3306’,
database: ‘test’,
});
connection.connect();
var deleteSql = ‘DELETE FROM student where s_id=4’;
//删除
connection.query(deleteSql,function (err, result) {
if(err){
console.log(‘[DELETE ERROR] - ‘,err.message);
return;
}
console.log(‘DELETE affectedRows’,result.affectedRows);
});
connection.end();
测试运行:结果如下:
DELETE affectedRows 1

原创粉丝点击