node.js操作mysql 回调返回值
来源:互联网 发布:网络之纵横天下txt下载 编辑:程序博客网 时间:2024/06/05 21:59
刚入门node.js的朋友可能不知道node.js操作mysql 是如何回调返回值得,我给你大家介绍介绍
简介和安装 测试MySQL 认识一下Connection Options MYSQL CURD 插入 更新 查询 删除 Nodejs 调用带out参数的存储过程,并得到out参数返回值 结束数据库连接两种方法和区别 连接池Pooling connections 创建 其它连接池配置选项 释放 使用示例 断线重连 其它…
Node.js与MySQL交互操作有很多库,具体可以在 https://www.npmjs.org/search?q=mysql 查看。
我选择了felixge/node-mysql,用的人比较多,先随大溜看看它的使用,暂时没有太过纠结于各库之间的执行性能问题,对其它库有研究的筒子也可以分享一下性能要求较高时的选择^_^!
地址:https://github.com/felixge/node-mysql
https://www.npmjs.org/package/mysql
安装
npm install mysql
示例
//设置连接数据库参数var mq = require("mysql");var db_conf = { host:'192.168.1.32', post:'3306', user:'test', password:'test', database:'opensips_news'}var conn;//连接数据库function handleDisconnect(){ conn = mq.createConnection(db_conf); conn.connect(function(err){ if(err) {//如果连接错误 console.log('error when connecting to db:', err); setTimeout(handleDisconnect, 2000); }});//监听数据库连接错误conn.on('error',function(err){ console.log('db error', err); if(err.code = 'PROTOCOL_CONNECTION_LOST') { handleDisconnect(); } else { throw err; }});}handleDisconnect();//打开连接mysql//查询 无回调function getAllUser(id){ var sql = 'select * from subscriber where id > '+ conn.escape(id); conn.query(sql,function(err,results){ console.log(results); return results;//此处return没用 是没返回值的 });}/** 查询 有回调 获得domain type默认domain value 默认为空 var dataStr = JSON.stringify(results);将json对象装换成json数据*/function getAlldomain(type,value,callback){ var sql = 'select id,domain from domain '; var option = new Array(); var dataStr= ""; conn.query(sql,function(err,results){ //处理查询结果 if(results){ for(var i = 0; i < results.length; i++) { //option[i] = {'label':results[i].domain,'value':results[i].domain}; //console.log(results[i].domain); option.push({'label':results[i].domain,'value':results[i].domain}); } } callback(err, option);//回调函数返回option数组 });}/** 插入数据库 有回调函数 有返回值的 新增用户 注册用户 username:用户名 domain:域名 password:密码 email_address:邮箱*/function reg_user(datas,callback){ //设置插入的值 var post = { username: datas.username, password:datas.password, email_address:datas.email, ha1:"", ha1b:"" }; var sql = "insert into subscriber set ? ";//插入数据库的sql //新增用户,插入数据库 var user_id = 0; var query = conn.query(sql,post,function(err,results){ //处理返回的结果,如果新增用户成功 if(results) { console.log(results); user_id = results.insertId; } console.log('新增用户id:'+user_id); callback(err, user_id);//回调函数 返回user_id }) //console.log(query.sql);}/** 调用方法 获取查询后的值 需要用到回调函数 callback = function(){};//回调函数 getAlldomain('domain','',callback);*/getAlldomain('domain','',function(err,results){ //results为调用方法的回调的成功的返回值 var datas = {}; datas.domian = results; result.status = 1; result.data = datas; res.send(result);});
0 0
- node.js操作mysql 回调返回值
- node.js操作mysql
- node.js操作MySQL
- Node.js + MySQL CRUD操作
- node.js操作MySQL数据库
- node.js操作MySQL数据库
- Async.js解决Node.js操作MySQL的回调大坑
- Node.js的mysql数据库操作
- Node.js中MySQL的操作
- Node.js的mysql数据库操作
- node.js操作mysql的工具类
- Node.js使用Sequelize操作MySQL
- Node.js 连接 MySQL 并进行数据库操作
- Node.js 连接 MySQL 并进行数据库操作
- Node.js笔记(四)mysql数据库操作
- Node.js 连接 MySQL 并进行数据库操作
- Node.js Addon 返回数组
- js node 操作
- 文章标题
- 黑马程序员——java 内部类、匿名内部类
- 销售排行榜
- jmeter CSV Data Set Config 乱码解决方法
- redis安装及phpredis
- node.js操作mysql 回调返回值
- QEMU 快速使用指南 (译) ******************
- iOS后台定位实现
- 眼图(Eye Diagram)与数字信号测试
- keepalived 打印日志
- Hadoop平台安装前准备
- 有向图是否存在环?
- storm-0.9.5集群搭建
- Merge Two Sorted Lists