使用Nodejs 连接数据库实现增删改查功能库
来源:互联网 发布:网络销售产品的价格 编辑:程序博客网 时间:2024/06/05 00:08
完成代码可去github查看下载,有更多功能
最近开始接触Nodejs, 前人已经有很多成熟的案例,自己写下来备忘的同时希望能帮助那些刚开始的同学。
准备工作:安装mysql 包,不清楚的话可以查npm的使用方法,windows 的同学可能是用cnpm更好些,打开terminal 或者 cmd(windows)进入你的项目目录,执行如下命令
npm install mysql
下面是查询数据库的类,sql 在外部传入,通过回调把结果返回。可以在其他地方初始化实例或者继承此类从而达到连接的目的
'use strict'var mysql = require('mysql'); function DB() { if (this instanceof DB) { this.connect(); } else { throw { error_msg: 'Please create the constructor of DB like this: "var _db = new DB();"' } }}DB.prototype.connect = function() { this.DATABASE = 'philip'; this.client = mysql.createConnection({ user: 'root', password: '123456', }); this.client.connect(); this.client.query("use " + this.DATABASE);}DB.prototype.doSelect = function(sql, callback) { var self = this; self.client.query( sql, function selectCb(err, results) { if (err) { throw err; } if(results && typeof callback ==='function') { callback(results); } self.client.end(); } ); }DB.prototype.doInsert = function(sql, params, callback) { var self = this; self.client.query( sql, params, function (err, results) { if(err){ throw err; } if(results && typeof callback ==='function') { callback(results); } self.client.end(); } );}DB.prototype.doUpdate = function(sql, params, callback) { var self = this; self.client.query( sql, params, function (err, results) { if(err){ throw err; } if(results && typeof callback ==='function') { callback(results); } self.client.end(); } );}DB.prototype.doDelete = function(sql, callback) { var self = this; self.client.query( sql, function (err, results) { if(err){ throw err; } if(results && typeof callback ==='function') { callback(results); } self.client.end(); } );}
当你想在其他地方使用时,可以像如下方式使用 DB 类
// you can use it anywherevar selectUserInfo = function() { try{ var _db = new DB(); // test the error message // DB(); var strSql = 'SELECT name, email, phone FROM user '; _db.doSelect( strSql, function(results) { for(var i = 0; i < results.length; i++){ console.log("%s\t%s\t%d", results[i].name, results[i].email, results[i].phone); }; } ); _db = null; } catch(err) { console.log(err.error_msg); }}selectUserInfo();var insertUser = function() { try{ var _db = new DB(); var strSql = 'INSERT INTO user ' + '(account, password, name, email, phone) VALUES(?,?,?,?,?)'; var params = ['km', '123', 'km', 'km@126.com', 123456]; _db.doInsert( strSql, params, function(results) { console.info(results); } ); _db = null; } catch(err) { console.log(err.error_msg); }}insertUser();var updateUser = function() { try{ var _db = new DB(); var strSql = 'UPDATE user SET name = ?, email = ? WHERE ID = ?'; var params = ['Eric', 'Eric@126.com', 4]; _db.doUpdate( strSql, params, function(results) { console.info(results); } ); _db = null; } catch(err) { console.log(err.error_msg); }}updateUser();var deleteUser = function() { try{ var _db = new DB(); var strSql = 'DELETE FROM user WHERE ID = 4'; _db.doDelete( strSql, function(results) { console.info(results); } ); _db = null; } catch(err) { console.log(err.error_msg); }}deleteUser();
以上就是数据库的基本操作了。
1 0
- 使用Nodejs 连接数据库实现增删改查功能库
- java H2数据库使用并实现增删改查功能
- Java使用JDBC连接MySQL数据库,实现增删改查
- Java使用jdbc连接MySql数据库,实现增删改查
- 使用nodejs操作mongodb来实现增删改查
- 使用 NodeJS+Express+MySQL 实现简单的增删改查
- jdbc连接数据库及对数据库实现增删改查
- nodejs操作mysql实现增删改查
- 创建数据库类实现 增删改查功能
- fmdb实现sqlite数据库的增删改查功能(上)
- fmdb实现sqlite数据库的增删改查功能(下)
- 导出数据库数据并实现增删改查功能
- JDBC连接MySQL数据库实现增删查改
- C++ API方式连接mysql数据库实现增删改查
- golang连接mysql数据库实现增删改查
- golang连接mysql数据库实现增删改查
- JDBC连接数据库并实现增删查改
- C++ API方式连接mysql数据库实现增删改查
- UCOS2系统内核讲述(二)_初始化调用函数
- 205. Isomorphic Strings
- 【Leetcode】378. Kth Smallest Element in a Sorted Matrix
- Linux运维笔记----如何获取帮助
- 迭代器模式
- 使用Nodejs 连接数据库实现增删改查功能库
- fragment和fragment传参
- 重叠IO C++
- android6.0 Activity(四) Surface创建
- Python的zip函数
- awk命令
- 继承和多态
- java方法重载和方法覆盖
- C#读取Oracle的Long Row字段值的问题