ode.js是一套用来编写高性能网络服务器的JavaScript工具包
 
通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,本篇就来介绍下如何通过NodeJS来操作 MySQL 数据库。 安装MySQL模块到NodeJS中 我们需要让NodeJS支持MySQL,则需要将MySQL模块添加到系统支持库
 
想要快速了解Node.js ,赞生推荐亲看看 node.js_guide.pdf  — node.js 开发指南 :想要电子版高清的 留言发送
 
如果不想留言 可以带你做飞机! 直接下载
 
Node.js
简单介绍一下node.js的操作吧
安装 node-mysql
C代码  

?

1

$ npm install mysql

 
创建测试表
//数据库名 NodeSample
C代码  

?

1

2

3

4

5

6

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 ;

 
连接数据库
Js代码  

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

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');

});

 
打开数据库
Js代码  

?

1

2

3

4

5

6

7

8

9

10

ClientConnectionReady = function(client)

{

client.query('USE NodeSample', function(error, results) {

if(error) {

console.log('ClientConnectionReady Error: ' + error.message);

client.end();

return;

}

});

};

 
完成数据库操作程序
Js代码 

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

var sys = require('sys');

  

var Client = require('mysql').Client;

var client = new Client();

  

client.user = 'someuser';

client.password = 'password';

  

console.log('Connecting to MySQL...');

  

client.connect(function(error, results) {

if(error) {

console.log('Connection Error: ' + error.message);

return;

}

console.log('Connected to MySQL');

ClientConnectionReady(client);

});

  

ClientConnectionReady = function(client)

{

client.query('USE NodeSample', function(error, results) {

if(error) {

console.log('ClientConnectionReady Error: ' + error.message);

client.end();

return;

}

ClientReady(client);

});

};

  

ClientReady = function(client)

{

var values = ['Chad', 'Lung', 'Hello World'];

client.query('INSERT INTO MyTable SET firstname = ?, lastname = ? , message = ?', values,

function(error, results) {

if(error) {

console.log("ClientReady Error: " + error.message);

client.end();

return;

}

console.log('Inserted: ' + results.affectedRows + ' row.');

console.log('Id inserted: ' + results.insertId);

}

);

GetData(client);

}

  

GetData = function(client)

{

client.query(

'SELECT * FROM MyTable',

function selectCb(error, results, fields) {

if (error) {

console.log('GetData Error: ' + error.message);

client.end();

return;

}

// Uncomment these if you want lots of feedback

//console.log('Results:');

//console.log(results);

//console.log('Field metadata:');

//console.log(fields);

//console.log(sys.inspect(results));

  

if(results.length > 0)

{

var firstResult = results[0];

console.log('First Name: ' + firstResult['firstname']);

console.log('Last Name: ' + firstResult['lastname']);

console.log('Message: ' + firstResult['message']);

}

});

  

client.end();

console.log('Connection closed');

};

03-15 00:44