vs软件如何数据库与html连接数据库,nodejs怎么和数据库连接?

通常在NodeJS开发中我们经常涉及到操作数据库,尤其是 MySQL ,作为应用最为广泛的开源数据库则成为我们的首选,下面本篇文章就来给大家介绍下如何通过NodeJS来操作 MySQL 数据库,希望对大家有所帮助。

a8b3e95adc7678ad5e08b0acca3f4a75.png

nodejs连接MySQL数据库的步骤:

安装 node-mysql:$ npm install mysql

我们需要让NodeJS支持MySQL,则需要将MySQL模块添加到系统支持库。

连接数据库:

引入并配置修改数据库用户名密码及数据库名var mysql = require('mysql');

var connection = mysql.createConnection({

host: 'localhost',

user: 'root',

password: '123456',

database: 'test'

});

connection.connect();

connection.query('SELECT 1 + 1 AS solution',

function(error, results, fields) {

if (error) throw error;

console.log('The solution is: ', results[0].solution);

});

数据库连接参数: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的配置文件

注:如果本地数据库连接失败,报错10061,说明本地MySQL服务未启动,在我的电脑右键服务下启动mysql

抛出源码,蹬蹬蹬~~~~var Mysqlconnect = require('mysql');

var sql = Mysqlconnect.createConnection({

host:'localhost',

user:'root',

password:'xxxx',

database:'trip'

});

sql.connect();

/* GET users listing. */

router.get('/', function(req, res, next) {

sql.query("select * from tour",[],function(err,data){

console.log(data);

res.send(data);

});

});

// 登录

router.post('/login', function(req, res, next) {

console.log(req.body.username);

sql.query("select * from user_app where username = ? and password = ?",

[req.body.username,req.body.password],function(err,data){

console.log(data);

if(err){

console.log(err);

return;

}

res.send(data);

});

});

// 注册

router.post('/register', function(req, res, next) {

console.log(req.body.username);

sql.query("insert into user_app (username,password,phone) value (?,?,?)",

[req.body.username,req.body.password,req.body.phone],function(err,data){

console.log(data);

if(err){

console.log(err);

return;

}

res.json({res_code:0});

});

});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值