安装 node-mysql
$ npm install mysql
创建测试表
//数据库名 NodeSample
CREATE TABLE `NodeSample`.`MyTable` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`firstname` VARCHAR( 20 ) NOT NULL ,
`lastname` VARCHAR( 20 ) NOT NULL ,
`message` TEXT NOT NULL
) ENGINE = MYISAM ;
连接数据库
var sys = require('sys');
var Client = require('mysql').Client;
var client = new Client();
client.user = 'someuser';
client.password = 'password';
client.connect(function(error, results) {
if(error) {
console.log('Connection Error: ' + error.message);
return;
}
console.log('Connected to MySQL');
});
打开数据库
ClientConnectionReady = function(client)
{
client.query('USE NodeSample', function(error, results) {
if(error) {
console.log('ClientConnectionReady Error: ' + error.message);
client.end();
return;
}
});
};
完成数据库操作程序
1 var sys = require('sys');
2
3 var Client = require('mysql').Client;
4 var client = new Client();
5
6 client.user = 'someuser';
7 client.password = 'password';
8
9 console.log('Connecting to MySQL...');
10
11 client.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
20 ClientConnectionReady = 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
32 ClientReady = function(client)
33 {
34 var values = ['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
49 GetData = function(client)
50 {
51 client.query(
52 'SELECT * FROM MyTable',
53 function selectCb(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 var firstResult = 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 };
序执行结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述