Node.js浅谈之数据库连接

一、三种连接数据库服务的方式

  • 使用命令行来连接$mongo 在一个数据库服务的下面,可以有多个数据库
  • 使用可视化工具,比如robo3T navicat
  • 使用编程语言对应的驱动 (代码来连接)

二、使用 express-generator 搭建工程项目

1、express 简介

  • express官网
  • express的优势:让Web开发更简洁,这也是框架存在的意义。
  • 学习 express-generator 这个脚手架工具
  • express安装:npm install express -S

2、使用express-generator初始化项目

npm install express-generator -g
express --view=ejs project   // -e 指的是使用 EJS模板引擎
cd project
npm install
npm start   // nodemon ./bin/www

3、详解express-generator脚手架搭建的项目架构

(1)package.json文件详解
	body-parser 用于解析HTTP请求体中的body数据
	cookie-parser 用于解析cookie会话数据
	ejs 页面模块
	morgan 是一个日志工具
	serve-favicon 用于设置网站的favicon

(2) /bin/www 入口文件详解
	端口号设置
	服务启动时的事件监听onError / onListen

(3)app.js文件详解
	中间件:next()表示交给下一个中间件处理
	路由配置:res.render('index', {})渲染index模板引擎
	模块引擎的配置
	express.static(),设置静态资源目录
	bodyParser中间件,用于处理form表单默认的 application/x-www-form-urlencoded 数据编码
	cookieParser中间件,用于解析cookie数据
	404中间件,渲染error模板引擎

(4)路由详解
	不能两次调用 res.send()
	向前端发送文件
		res.sendFile(__dirname+'form.html')
	如何定义一个路由?
		router.get('/xxx',function(req,res,next){})
		router.post('/xxx',function(req,res,next){})
		同时支持GET/POST:
		router.all('/xxx', function(req,res,next){})
		路由可以使用正则表达式
		router.get('/ab*cd', fn)

(5)ejs模板引擎详解
	结合ejs官网,介绍什么是ejs?
	常用标签介绍(在代码中演示一下这些标签的用法):
		<% %>  流程控制标签,用于包裹js代码
		<%= %> 直接输出值,不对“值”执行解析
		<%- %> 输出值,会对“值”中的HTML进行解析
		<%# %> 注释标签
		% 对特殊符号进行转义,如 %%
		<%- include('head', data) %>
	express渲染ejs的语法:
		res.render('ejs', data, options)

三、mongoose 模块连接数据库

npm install express-generator -g
express --view=ejs project   // -e 指的是使用 EJS模板引擎
cd project
npm install
npm start   // nodemon ./bin/www
  • 使用mongoose驱动,连接数据库
var mongoose = require('mongoose')

mongoose.connect('mongodb://localhost/test', {
  useNewUrlParser: true,
  useUnifiedTopology: true
})

var db = mongoose.connection
db.on('error', function(err) {
  console.log('数据库连接成败')
})
db.once('open', function() {
  console.log('数据库连接成功')
})
  • 使用mongoose创建Model模型,用于对集合进行增删改查
ar mongoose = require('mongoose')

var userSchema = mongoose.Schema({
  name: String,
  age: Number
})

var userModel = mongoose.model('users', userSchema)

module.exports = userModel

Node.js中连接SQL Server数据库有多种方法,其中一种常用的方法是使用mssql模块。可以使用以下代码来连接SQL Server数据库: ```javascript var sql = require('mssql'); var config = { user: 'sa', password: '123', server: 'localhost', database: 'QCode' }; sql.connect(config).then(function() { // 在这里执行数据库操作 }).catch(function(err) { // 处理连接错误 console.log(err); }); ``` 在上面的代码中,首先引入mssql模块,并配置数据库连接的相关信息。然后使用`sql.connect()`方法连接到SQL Server数据库。连接成功后,可以在`.then()`回调函数中执行数据库操作,比如查询数据或插入数据等。如果连接失败,可以在`.catch()`回调函数中处理连接错误。 引用提供了一个示例代码,展示了如何使用mssql模块连接SQL Server数据库,并查询dbo.QCodeInfo表的前10条数据。可以根据自己的需求修改数据库配置和查询语句。 引用提供了有关Node.js连接SQL Server数据库的更详细的说明和实现技巧,可以参考该资料以获取更深入的了解。 另外,还可以使用其他模块如tedious、sequelize等来连接SQL Server数据库,具体的使用方法可以参考它们的文档和示例代码。 引用提供了一个提示,在新建的js文件中设置为Node.js的启动文件,并按F5执行程序。这是在VS Code中调试Node.js程序的常用方法,可以方便地查看程序的执行结果和调试错误。 总结起来,要在Node.js中连接SQL Server数据库,首先需要引入适当的模块,配置数据库连接信息,然后使用相应的方法建立连接,执行数据库操作。具体的实现方式可以根据自己的需求和喜好选择不同的模块和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值