nodejs 教程三 (接入mysql

接着教程二
进入myApp项目下新建文件mysql.js并键入如下代码:

  1. 创建
var mysql  = require('mysql');  //调用MySQL模块
//创建一个connection
var connection = mysql.createConnection({    
    connectionLimit: 50,
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'nodesample'
});

//创建一个connection
connection.connect(function(err){
    if(err){       
        console.log('[query] - :'+err);
        return;
    }
    console.log('[connection connect]  succeed!');
}); 

//执行SQL语句
connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
    if (err) {
        console.log('[query] - :'+err);
        return;
    }
    console.log('The solution is: ', rows[0].solution); 
}); 

//关闭connection
connection.end(function(err){
    if(err){       
        return;
    }
    console.log('[connection end] succeed!');
});

确保安装了mysql模块的情况下(npm install mysql --save),接着执行命令

node mysql

结果返回:


image
  1. 增加
    这里需要打开mysql链接数据库新建一个表名为mytable的数据表,表结构如下:
    、、、、、、、、、、、、、
    | id | name | age | address |其中id为主键。将mysql.js里面修改为如下并在命令行执行命令node mysql:
var mysql = require('mysql');
var connection = mysql.createConnection({
    connectionLimit: 50,
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'nodesample'
});

connection.connect();

var addVip = 'insert into mytable(name, age, address) values(?,?,?)';
var param = ['测试',100,'测试'];
connection.query(addVip, param, function(error, result){
    if(error)
    {
        console.log(error.message);
    }else{
        console.log('insert id: '+result.insertId);
    }
});
connection.end();

结果返回 :


image

刷新数据库查看已经增加了一条数据:


image
  1. 删除
    将mysql.js文件修改为如下并在命令行执行node mysql
var mysql = require('mysql');
var connection = mysql.createConnection({
    connectionLimit: 50,
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'nodesample'
});

connection.connect();

var addVip = 'delete from mytable where id = 2';
connection.query(addVip, function(error, result){
    if(error)
    {
        console.log(error.message);
    }else{
        console.log('affectedRows: '+result.affectedRows);
    }
});

connection.end();

返回结果如下:


image

image
  1. 查找
    将mysql.js文件修改为如下并在命令行执行node mysql
ql = require("mysql");
var connection = mysql.createConnection({
    connectionLimit: 50,
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'nodesample'
});

connection.connect();
connection.query('select * from mytable', function(error, results, fields){
    if (error) {
        throw error;
    }
    if (results) {
        for(var i = 0; i < results.length; i++)
        {
            console.log('%s\t%s',results[i].name,results[i].id);
        }
    }
});

connection.end();

结果返回如下:


image

image
  1. 修改
    将mysql.js文件修改为如下并在命令行执行node mysql
= require('mysql');
var connection = mysql.createConnection({
    connectionLimit: 50,
    host: 'localhost',
    user: 'root',
    password: '123',
    database: 'nodesample'
});
connection.connect();
var userSql = "update mytable set age = age-1 where id = ?";
var param = [1000, 2];
connection.query(userSql, param, function (error, result) {
    if(error)
    {
        console.log(error.message);
    }else{
        console.log('affectedRows: '+result.affectedRows);
    }
});
connection.end();

结果返回如下


image

image

image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • MySQL技术内幕:InnoDB存储引擎(第2版) 姜承尧 第1章 MySQL体系结构和存储引擎 >> 在上述例子...
    沉默剑士阅读 12,144评论 0 16
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,906评论 18 399
  • 1.MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。My...
    黄花菜已凉阅读 10,012评论 3 60
  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 9,461评论 0 19
  • 偷走调皮的星星, 偷走明白的月, 涂黑猜不透心思的白云, 虚置天地间陈设, 夜将会走失于黑暗的陷阱。 我只是不喜欢...
    蓝羽鱼阅读 1,631评论 0 3