使用node.js与mysql数据库的相关操作_A。Zhou YJ的博客-程序员秘密

技术标签: 数据交互  前端  

1.使用node.js去连接数据库:

//首先安装MySQL模块:cnpm install mysql -S 或者 cnpm i mysql -S; yarn add mysql -S
//其次:用require导入本地文件的mysql;
//然后再利用createconnection()方法创造连接,具体代码如下;
var mysql = require('mysql')
var connection = mysql.createConnection({
    host:'localhost',//数据库地址
    user:'root',//数据库用户名
    password:'root',//数据库密码
    database:'w1997'//数据库名
})
connection.connect()//启动连接

2.使用node.js去操作数据库(增删查改)

//使用connection.query(sql,function(err,result){})方法
//其中sql 是我们多数据库的增删查改炒作、例如:
var sql = `inster into users values('zs','man')`//增
var sql  =`delete from users where name='zs'`//删除 delete from users 删除所有
var sql =`select * from users where name = 'zs'`//查看 select *from user 查看所有
var sql =`update users set name='ls' where name ='zs'`//把zs修改成ls
connection.query(sql,function(err,result){
    if(err){
    console.log('添加错误',err.message)
}
    console.log('添加成功',result)
})
connection.end()//关闭连接,连接的个数是有限的所以我们每次操作完了都应该关闭连接

3.退出数据库的连接模式:Ctrl +C;

vscode清空终端内容 : cls;

怎样关闭数据库:连接 connection.end()方法

4.怎样获取数据:

当时查询的时候,获取的数据是对象数组的形式:所以arr[i].key的方式可以直接获取

当不是查询的说话:增删改——获取的数据是对象形式:所以object.key的方法获取

5.数据库操作的预编译:

效果是让数据安全性更高

var sql = `inster into users values(?,?)`//用?来代替值
connection.query(sql,['zs','man'],function(err,result){})
                //以数组的形式传入参数

6.where条件的注意事项:

注意后面的值除了数字以外其他都要用字符串的形式传入

7.怎样判断添加、删除、修改数据库是否成功:

判断result.affectRows的值是否大于0 即是说受影响的行数是不是大于0

8.node.js的模块化:

模块化——创建单独的js文件:实现功能的封装,达到简化代码,反复使用,节约时间的作用

注意:js文件引入js文件我们使用的是module.exprots = ? connection的方法导出的,导入是require('./index,js')—地址

9.node.js怎样响应前段的请求:

通过node.js创建后端接口接收和send()方法返回值来响应前端的请求:

10.node.js构建后端接口;

//使用node.js的express框架来构建后端的接口;
//首先是安装express模块
//然后通过require()方法来导入本地的experss文件
//通过express().get()的方法来做出响应的响应和返回结果
//然后再通过express.listen()的方法来创建端口号;和监听前端给我们的地址
//代码如下:
var express = require('express')
var app =express()
app.get('/',function(req,res){

        res.send('操作成功')
})
app.listen(8081,function(){console.log('访问地址:',https://127.0.0.1:8081)})

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/haiTongZhouyj/article/details/91409898

智能推荐

element-ui表单验证明明有值 都是却一直提示不能为空_北海以北2020的博客-程序员秘密

prop 是指我们要验证下面输入框哪一个值是不是符合我们想要的规则 这个cat_name不是直接自己随便定义名称然后需要在data里面定义规则

图像处理基本操作实现工业产品缺陷检测_海的白帆的博客-程序员秘密

一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl._create_default_

Oracle创建表字符集,oracle 字符集安装错了,修改字符集 及创建用户 表空间 ,删除用户及所有的表..._苑er的博客-程序员秘密

1.首先以sysdba的身份登录上去 conn /as sysdba2.关闭数据库shutdown immediate;3.以mount打来数据库,startup mount4.设置sessionSQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;SQL> A...

51单片机keil配置_weixin_30391339的博客-程序员秘密

1. data     --->   可寻址片内ram  bdata    --->   可位寻址的片内ram   idata     --->   可寻址片内ram,允许访问全部内部ram pdata    --->   分页寻址片外ram (MOVX @R0) (256 BYTE/页)    xdata    --->   可寻址片外ram (6...

光猫机顶盒有路由鸿蒙吗,光猫和机顶盒是一样的吗_weixin_39867662的博客-程序员秘密

提到光猫或者机顶盒,很多人都了解是用于上网的,光猫和机顶盒是否是一样的,两者之间有没有什么区别?一、光猫和机顶盒是一样的吗1、两者是不一样的,因为两者有一定的区别,不是同一个类型。光猫能够将光信号转变为能够接受到的网络信号,再通过路由器,从而传输给电脑,用于家庭上网使用。2、机顶盒其实是一种网络机顶盒,安装于光猫之后,能够将网络信号传输到电视当中,这样子就能够在电视当中收到信号。如果没有光纤猫,只...

python hook函数_详解Python开发中如何使用Hook技巧 Python 可以hook内核函数吗?_队长小翼的博客-程序员秘密

python 如何实现运行后单击屏幕的任意位置返回鼠标pyHook的方法不可以了,我试过了,请问还有什么方法嘛???求解答欢迎来到CSS布局HTML,下面是一个对应的代码,不过你需要安装pythoncom和pyHook。 import pythoncom, pyHook def onMouseEvent(event): print "Position:", event.Position retur...

随便推点

SpringCloud之负载均衡详解_junius9的博客-程序员秘密_springcloud负载均衡

SpringCloud之负载均衡详解1.简介1.1 什么是负载均衡(进程内LB)Load balancing,即负载均衡,是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最优化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。1.2 为什么需要负载均衡在分布式微服务架构中,往往有多个服务的提供者者注册在多个注册中心里,这个时候消费者需要使用服务时,决定由哪一个注册中心所在的服务提供者提供服务就是负载均衡。(也就是进程内LB,注:本

ActionSheet样式UIAlertController的正确使用___zhangheng的博客-程序员秘密

苹果在WWDC 2014 session video的a look inside presentation controllers一讲中,展示了如何使用UIAlertController,看起来挺简单,但在实际用的时候,问题不少,原因是苹果并没有详细对其进行说明,因此不得不探索一番。对于Alert样式的UIAlertController,没有什么问题(在不同设备上及在处理屏幕旋转问题上,都

Java方法基础案例——判断素数方法编写_城南秋夜的博客-程序员秘密_java编写判断素数的方法

package cn.peixv.fangfa;import java.util.Scanner;public class su { static Scanner input=new Scanner(System.in); public boolean issushu() { System.out.println("输入个数"); int a = input.nextInt(); if (a < 2) { System.out.println("请输入一个比2大的数").

Elasticsearch_猪猪紫叶的博客-程序员秘密_elasticsearch的特点

题记:Elasticsearch研究有一段时间了,现特将Elasticsearch相关核心知识、原理从初学者认知、学习的角度,从以下9个方面进行详细梳理。欢迎讨论……0. 带着问题上路——ES是如何产生的?(1)思考:大规模数据如何检索?如:当系统数据量上了10亿、100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题:1)用什么数据库好?(mysql、sybase...

Haskell学习笔记2 -- Functor & Applicative 函子_kingofyb的博客-程序员秘密

Currying 柯里化首先了解一下currying的概念,在Haskell中二元函数(+)在接收了参数1后会返回一个新的函数(+1)而函数(+1)在接收了参数2后会返回一个值31 + 2(+1) 23函数f接收x返回f(x) -- a -> bFunctor但现在如果我们有一个函数(比如(+3))和一个盒子(比如 Just 1)该怎么将函数应用在这个盒子的值上呢函数的输入是一个值,并不能接收一个盒子这时就要使用fmap函数fmap接收一个函数和一个装在盒子里的

推荐文章

热门文章

相关标签