資料庫操作示例:MySQL(MariaDB)
阿新 • • 發佈:2020-10-26
MariaDB
簡介:Mysql分支,可以無縫替換
驅動
npm install mysql
示例
/* 操作資料庫基本步驟 */ //載入資料庫驅動 const mysql = require('mysql'); //建立資料庫連線 const connection = mysql.createConnection({ host : 'localhost', //資料庫所在的伺服器的域名或者IP地址 user : 'root',//使用者名稱 password : 'admin',//密碼 database : 'book', //資料庫 port : '4406' //埠號 }); //執行連線操作 connection.connect(); //操作資料庫 connection.query('SELECT count(*) as count from book', function (error, results, fields) { if (error) throw error; console.log('表book中共有:', results[0].count + '條資料'); }); //關閉資料庫 connection.end();
封裝介面
db.js
/* 封裝通用資料庫通用api */ const mysql = require('mysql'); /** * * @param sql * @param data * @param callback */ exports.base = (sql, data, callback) => { /* 操作資料庫基本步驟 */ //建立資料庫連線 const connection = mysql.createConnection({ host: 'localhost', //資料庫所在的伺服器的域名或者IP地址 user: 'root',//使用者名稱 password: 'admin',//密碼 database: 'book', //資料庫 port: '4406' //埠號 }); //執行連線操作 connection.connect(); //操作資料庫 connection.query(sql, data, function (error, results, fields) { if (error) throw error; callback(results); }); //關閉資料庫 connection.end(); }
封裝呼叫示例
./test/dbtest.js
/* 測試 */ const db = require('../db'); // //插入操作 // let sql = 'insert into book set ?'; // let data ={ // name:'笑傲江湖', // author:'金庸', // category:'文學', // description:'武俠小說' // } // // db.base(sql,data,(result)=>{ // console.log(result); // }); // //更新操作 // let sql = 'update book set description = ? where id = ?'; // let data =['宋朝武俠小說',8]; // db.base(sql,data,(result)=>{ // console.log(result); // }); // //查詢操作1 // let sql = 'select * from book where id = ?'; // let data = [5]; // db.base(sql,data,(result)=>{ // console.log(result); // }); // //查詢2 // let sql = 'select * from book'; // let data = null; // db.base(sql,data,(result)=>{ // console.log(result); // }); //刪除操作 let sql = 'delete from book where id = ?'; let data = [6]; db.base(sql,data,(result)=>{ console.log(result); });