nodejs中关于mysql数据库的操作

nodejs中关于mysql数据库的操作

目录

基本概念

为什么要有数据库

什么是数据库

数据库的分类

数据库中基本术语

数据库的可视化操作(创建数据库、创建表)

数据类型(部分)

数据库的常见命令

数据库相关

表相关

插入数据

修改数据

删除数据

查询数据

条件查询

导入和导出数据库脚本

node操作mysql

基本使用

查询语句

插入语句

修改语句

删除语句

db模块封装

基本概念 为什么要有数据库

没有数据库,我们的数据都是存储在文件当中的,那么文件存储数据的缺点有:

文件的安全性问题。

文件不利于查询和对数据的管理。

文件不利于存放海量数据

文件在程序中控制不方便

什么是数据库

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行增加、删除、修改、查询等操作。

前端程序员只需要对数据库有一定了解即可。

浏览器---->服务器---->数据库

数据库的分类

关系型数据库:

MySQL

Oracle

SQL Server

SQLite(安卓)

非关系型数据库

mongodb

redis

BigTable

DBA

数据库中基本术语

数据库database:存放数据的仓库,一般一个项目中的数据会存储到一个数据库中

表table: 一个表对应一类数据,比如学生表,老师表

列columns:一张表由多列组成,也叫一个字段,比如学生的姓名,成绩,年龄等

行rows: 一个学生信息对应一行,一行也叫一条记录。

数据库的可视化操作(创建数据库、创建表) 数据类型(部分)

int: 整数类型

varchar: 字符类型

datetime: 日期类型

数据库的常见命令

SQL: 结构化查询语言(Structured Query Language)简称SQL 。用于数据库的增删改查以及管理等功能。

数据库相关

--SQL中的注释

SHOW DATABASES; 查看所有的数据

CREATE DATABASE mydb; 创建数据库

DROP DATABASE mydb;删除数据库

USE mydb; 使用数据库

表相关

SHOW TABLES;查看当前数据库中所有的表

创建表

CREATE TABLE user(     id INT auto_increment PRIMARY KEY,     name VARCHAR(255) NOT NULL,     age INT ,     gender VARCHAR(4),     content VARCHAR(255) )

DROP TABLE user;删除表

插入数据 INSERT INTO user (name, age, gender, content) VALUES ('胡聪聪', 18, '男', '哈哈哈,哈哈哈') -- 如果省略列名,那么必须要和字段一一对应 INSERT INTO user VALUES (null, '胡聪聪', 18, '男', '哈哈哈,哈哈哈') INSERT INTO user SET name='hcc', age=18, gender='男', content='嘻嘻嘻' 修改数据 // 修改所有的数据 UPDATE USER SET name='胡西西' // 根据条件修改 UPDATE USER set name='胡聪聪', content="这是内容" WHERE id = 2 删除数据 // 删除所有的数据 DELETE FROM USER // 删除id为5的数据 DELETE FROM USER WHERE id = 5 查询数据 -- 查询所有数据 SELECT * FROM user -- 查询指定列 SELECT id, name,age from user 条件查询 --- 并且 SELECT * from user where name='胡聪聪' AND age=21 --- 或者 SELECT * from user where name='胡聪聪' or age=21 -- 范围查询 -- 模糊查询  %表示通配  _表示单个字符 SELECT * from user where name LIKE '胡%' -- in语句 SELECT * from user where name in ('胡聪聪', 'hcc') -- order by -- 排序需要写在最后面,,asc升序  desc:降序 SELECT * from user ORDER BY id desc -- limit分页 SELECT * from user ORDER BY id desc limit 3 SELECT * from user ORDER BY id desc limit 3,3 -- 获取总条数 SELECT count(*) as total FROM user 导入和导出数据库脚本 node操作mysql 基本使用

安装

npm install mysql

基本使用

// 导入第三方包 const mysql = require('mysql') // 创建连接 var connection = mysql.createConnection({   // 本地   host: 'localhost',   user: 'root',   password: 'root',   // 数据库名称   database: 'mydb',   port: 3306 }) // 连接数据库 connection.connect() // 执行sql语句 connection.query('select * from user where id = 8', (err, result) => {   if (err) return console.log('查询失败', err)   // result返回的是数组, 数组中是一个对象   console.log(result) }) // 关闭连接 connection.end() 查询语句 var name = '胡聪聪' // 使用?表示占位,可以防止sql注入 connect.query(`select * from user where name=?`, name, (err, result) => {   if (err) return console.log('错误了', err)   console.log(result) }) 插入语句 connect.query(   'insert into user (name, age, gender, content) values (?, ?, ?, ?)',   ['胡嘻嘻', 18, '男', '哈哈哈哈'],   err => {     if (err) return console.log('错误', err)     console.log('添加成功了')   } ) // 方式2 connect.query(   'insert into user set ?',   {     name: '胡洗洗',     age: 30,     gender: '男',     content: '哈哈哈'   },   (err, result) => {     if (err) return console.log('错误', err)     console.log('添加成功了', result)   } ) 修改语句 connect.query(   'update user set ? where id = ?',   [     {       name: '胡洗洗',       age: 30,       gender: '男',       content: '哈哈哈'     },     10   ],   (err, result) => {     if (err) return console.log('错误', err)     console.log('添加成功了', result)   } ) 删除语句 connect.query('delete from user where id = ?', [10], (err, result) => {   if (err) return console.log('失败', err)   console.log(result) }) db模块封装 // 导入mysql const mysql = require('mysql') // 创建连接对象 const connect = mysql.createConnection({   host: 'localhost',   port: 3306,   user: 'root',   password: 'root',   database: 'mydb' }) exports.query = function(sql, params, callback) {   connect.connect()   connect.query(sql, params, (err, data) => {     callback &&  callback(err, data)   })   connect.end() }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持易知道(ezd.cc)。 

推荐阅读

    mac怎么安装mysql| macbook怎么下载mysql

    mac怎么安装mysql| macbook怎么下载mysql,标签,学习python 不得不学习的就是数据库,那么在开始学习数据库之前,那么今天我们先说下怎么安装m

    MySQL更新更新页面1/4。

    MySQL更新更新页面1/4。,,插入和替换 插入和替换语句的功能是将新数据插入表中,这两个语句的语法相似,它们之间的主要区别是如何处理重复的

    mysql数据库启动失败

    mysql数据库启动失败,报错,非正常,1、原因 公司服务器故障,非正常停机导致数据库启动失败。 报错信息 [ [email protected] dmp]# /etc/ini

    mysql长整型是什么

    mysql长整型是什么,整型,数据类型,语法,用户,填充,版本,MySQL长整型是“BIGINT”,是MySQL中最常用的数据类型之一,其可以用来存储较大的整数值,与

    深入理解MySQL分区

    深入理解MySQL分区,查询,数据,列表,索引,操作,按键,MySQL数据库是一个开源的关系型数据库管理系统。在一些大型数据环境中,为了更好地管理数据、

    mysql 如何查询

    mysql 如何查询,查询,数据,语句,条件,选取,排序,MySQL是一款常用的关系型数据库管理系统,被广泛应用于各种网站和应用开发。在MySQL中查询数据是

    MySQL中怎么实现分页操作

    MySQL中怎么实现分页操作,数据,显示,偏移量,分页,查询,初始,一、 背景什么是分页,就是查询时候数据量太大,一次性返回所有查询结果既耗费网络资源

    mysql怎么连接数据库

    mysql怎么连接数据库,服务,启动,数据库,命令,登录,步骤,mysql连接数据库的方法:1、通过计算机管理方式或通过命令行方式执行“net start mysql”

    mysql 查询拼接

    mysql 查询拼接,函数,字段,字符串,查询,分隔符,连接,MySQL 查询拼接在使用 MySQL 进行查询时,有时需要将多个字段或多张表中的字段进行拼接,这时

    怎么启动 mysql

    怎么启动 mysql,启动,服务器,输入,命令提示符,终端,命令,MySQL是一种广泛使用的关系型数据库管理系统。它是一种可扩展性强、性能卓越、跨平台

    mysql 如何卸载

    mysql 如何卸载,卸载,服务,命令,软件包,数据,安装,MySQL是一种广泛使用的数据库管理系统,用于管理数据的存储、检索和更新。在某些情况下,您需要

    mysql视图是什么

    mysql视图是什么,视图,查询,数据,替换,年龄,引用,mysql视图是一个虚拟表,其内容由查询定义;视图包含系列带有名称的列和行数据,而行和列数据来自定