MySql數據庫是最常用的數據庫,node也提供了操作mysql數據庫的模塊:mysql。
安裝mysql模塊:npm install mysql
JavaScript Code
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 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
/* MySql模塊學習 //創建數據庫 Create DATABASE MYSQLDATA; //表操作 Create Table MYTABLE (name VARCHAR(20), sex CHAR(1)); Insert into MYTABLE Values('Michael', 'm'); Update MYTABLE Set name = 'Michael Jordan' Where sex = 'm'; Select * From MYTABLE Delete from MYTABLE; Drop Table MYTABLE; //刪除數據庫 Drop DATABASE MYSQLDATA; */ // 引入Mysql var mysql = require( 'mysql' ); var connection = mysql.createConnection({ host : 'localhost' , user : 'root' , password : 'kingview' , database : 'test' }); /* MySql數據庫連接參數說明: 參數 描述 host 主機地址 (默認:localhost) user 用戶名 password 密碼 port 端口號 (默認:3306) database 數據庫名 charset 連接字符集(默認:'UTF8_GENERAL_CI',注意字符集的字母都要大寫) localAddress 此IP用於TCP連接(可選) socketPath 連接到unix域路徑,當使用 host 和 port 時會被忽略 timezone 時區(默認:'local') connectTimeout 連接超時(默認:不限制;單位:毫秒) stringifyObjects 是否序列化對象 typeCast 是否將列值轉化為本地JavaScript類型值 (默認:true) queryFormat 自定義query語句格式化方法 supportBigNumbers 數據庫支持bigint或decimal類型列時,需要設此option為true (默認:false) bigNumberStrings supportBigNumbers和bigNumberStrings啟用 強制bigint或decimal列以JavaScript字符串類型返回(默認:false) dateStrings 強制timestamp,datetime,data類型以字符串類型返回,而不是JavaScript Date類型(默認:false) debug 開啟調試(默認:false) multipleStatements 是否許一個query中有多個MySQL語句 (默認:false) flags 用於修改連接標志 ssl 使用ssl參數(與crypto.createCredenitals參數格式一至)或一個包含ssl配置文件名稱的字符串,目前只捆綁Amazon RDS的配置文件 */ // 執行數據庫連接 connection.connect(); var sqlstring = "" ; // 創建表 sqlstring = "Create Table MYTABLE (name VARCHAR(20), sex CHAR(1))" connection.query(sqlstring, function (err, results, fields) { if (err) { console.log( '[UPDATE ERROR] - ' , err.message); return ; } console.log( '--------------------------CREATE----------------------------' ); console.log( 'CREATE TABLE:' , results); console.log( '------------------------------------------------------------\n\n' ); }); // 插入數據 sqlstring = "Insert into MYTABLE Values('Michael', 'm')" ; connection.query(sqlstring, function (err, result) { if (err){ console.log( '[INSERT ERROR] - ' , err.message); return ; } console.log( '--------------------------INSERT----------------------------' ); console.log( 'INSERT ID - ' , result); console.log( '------------------------------------------------------------\n\n' ); }); // 更新數據 sqlstring = "Update MYTABLE Set name = 'Michael Jordan' Where sex = 'm'" ; connection.query(sqlstring, function (err, result) { if (err){ console.log( '[UPDATE ERROR] - ' , err.message); return ; } console.log( '--------------------------UPDATE----------------------------' ); console.log( 'UPDATE affectedRows - ' , result.affectedRows); console.log( '------------------------------------------------------------\n\n' ); }); // 查詢數據 sqlstring = "Select * From MYTABLE" ; connection.query(sqlstring, function (err, result) { if (err){ console.log( '[SELECT ERROR] - ' , err.message); return ; } console.log( '--------------------------SELECT---------------------------' ); console.log( 'SELECT - ' , result); console.log( '------------------------------------------------------------\n\n' ); }); //刪除數據 sqlstring = "Delete From MYTABLE" ; connection.query(sqlstring, function (err, result) { if (err){ console.log( '[DELETE ERROR] - ' , err.message); return ; } console.log( '--------------------------DELETE----------------------------' ); console.log( 'DELETE affectedRows - ' , result.affectedRows); console.log( '------------------------------------------------------------\n\n' ); }); //刪除表格 sqlstring = "Drop Table MYTABLE" ; connection.query(sqlstring, function (err, result) { if (err){ console.log( '[DROP ERROR] - ' , err.message); return ; } console.log( '--------------------------DROP-----------------------------' ); console.log( 'DROP TABLE :' , result.affectedRows); console.log( '------------------------------------------------------------\n\n' ); }); // 斷開數據庫連接 connection.end(); |