Node.js 连接 MySQL 并进行数据库操作

[1].[代码] 安装 node-mysql

1$ npm install mysql

[2].[代码] 创建测试表

1//数据库名 NodeSample
2 
3CREATE TABLE`NodeSample`.`MyTable` (
4  `id` INT UNSIGNED NOTNULLAUTO_INCREMENT PRIMARYKEY,
5  `firstname`VARCHAR( 20 )NOTNULL ,
6  `lastname` VARCHAR( 20 ) NOTNULL,
7  `message` TEXTNOTNULL
8) ENGINE = MYISAM ;

[3].[代码] 连接数据库

01var sys = require('sys');
02  
03var Client = require('mysql').Client;
04var client =newClient();
05  
06client.user = 'someuser';
07client.password = 'password';
08  
09client.connect(function(error, results) {
10  if(error) {
11    console.log('Connection Error: '+ error.message);
12    return;
13  }
14  console.log('Connected to MySQL');
15});

[4].[代码] 打开数据库

01ClientConnectionReady = function(client)
02{
03    client.query('USE NodeSample',function(error, results) {
04        if(error) {
05            console.log('ClientConnectionReady Error: '+ error.message);
06            client.end();
07            return;
08        }
09    });
10};

[5].[代码] 完成数据库操作程序

01var sys = require('sys');
02  
03var Client = require('mysql').Client;
04var client =newClient();
05  
06client.user = 'someuser';
07client.password = 'password';
08  
09console.log('Connecting to MySQL...');
10  
11client.connect(function(error, results) {
12  if(error) {
13    console.log('Connection Error: '+ error.message);
14    return;
15  }
16  console.log('Connected to MySQL');
17  ClientConnectionReady(client);
18});
19  
20ClientConnectionReady = function(client)
21{
22    client.query('USE NodeSample',function(error, results) {
23        if(error) {
24            console.log('ClientConnectionReady Error: '+ error.message);
25            client.end();
26            return;
27        }
28        ClientReady(client);
29    });
30};
31  
32ClientReady = function(client)
33{
34  varvalues = ['Chad','Lung','Hello World'];
35  client.query('INSERT INTO MyTable SET firstname = ?, lastname = ? , message = ?', values,
36    function(error, results) {
37      if(error) {
38        console.log("ClientReady Error: "+ error.message);
39        client.end();
40        return;
41      }
42      console.log('Inserted: '+ results.affectedRows +' row.');
43      console.log('Id inserted: '+ results.insertId);
44    }
45  );
46  GetData(client);
47}
48  
49GetData = function(client)
50{
51  client.query(
52    'SELECT * FROM MyTable',
53    functionselectCb(error, results, fields) {
54      if(error) {
55          console.log('GetData Error: '+ error.message);
56          client.end();
57          return;
58      }
59      // Uncomment these if you want lots of feedback
60      //console.log('Results:');
61      //console.log(results);
62      //console.log('Field metadata:');
63      //console.log(fields);
64      //console.log(sys.inspect(results));
65  
66      if(results.length > 0)
67      {
68        varfirstResult = results[0];
69        console.log('First Name: '+ firstResult['firstname']);
70        console.log('Last Name: '+ firstResult['lastname']);
71        console.log('Message: '+ firstResult['message']);
72      }
73  });
74  
75  client.end();
76  console.log('Connection closed');
77};
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值