NodeJS开发博客(二) 接入数据库
1. mysql 数据库下载网址:https://dev.mysql.com/downloads/mysql/
账号是 root 密码是 a1************
网站账号是邮箱,密码是 Aa1********
2 mysql workbench。操作mysql的客户端,可视化操作。 下载地址是
https://dev.mysql.com/downloads/workbench


右击Tables-->createTable 创建表




alert table是继续编辑表; drop table是删除表
相关命令:
use myblog;
-- show tables; 注释
-- 增加内容
insert into users(username,`password`,realname) values('zhangsan','','张三');
-- password 是关键字 所以包起来
insert into users(username,`password`,realname) values('lisi','','李四');
-- 查询内容
select * from users;
select id,username from users;
select * from users where username='zhangsan';
select * from users where username='zhangsan' and password='';
select * from users where username='zhangsan' or password='';
-- 模糊查询
select * from users where username like '%zhang%';
-- 排序(查找password中包含1的数据,并且根据id排序,默认正顺序,desc是倒顺序)
select * from users where password like'%1%' order by id desc;
--
use myblog;
-- 直接执行update会报错,安全问题,所以先执行下面的命令
SET SQL_SAFE_UPDATES = 0;
update users set realname='李四2' where username='lisi';
select * from users; -- 删除
delete from users where username='lisi';
select * from users;
insert into users(username,`password`,realname) values('lisi','','李四');
select * from users;
-- 执行上述命令之后,可以发现 李四的id已经变成3了,因为之前id=2的时候已经被使用过了
-- 但一般用update去更新表格,新增 state,默认为1;
-- 1表示有效,0表示该行无效
select * from users;
select * from users where state='';
-- 一般不会用delete去删除一行,这样的话这一行就会空出来,用update,且软删除的好处是,可以恢复
update users set state='' where username='lisi';
select * from users where state='';
-- 查询 不等于0
select * from users where state <> '';
这里为了练习使用delete,所以采用 delete方法,故删掉state这一行:

中的 delete Selected;
附: select version(); 查看sql版本;
--------------------------
使用代码连接mysql数据库。
切换源:
安装nrm npm install -g nrm
出现permission denied的,自觉加sudo吧。sudo npm install -g nrm
然后切换到 taobao源。安装mysql: npm i mysql -S
const mysql = require('mysql');
//创建链接对象
const con = mysql.createConnection({
host:'localhost',
user:'root',
password:'a1*********',
prot:'3306',
database:'myblog'
})
//开始连接
con.connect();
//执行 sql 语句
const sql = 'select * from users;'
//const sql = `update users set realname='李四2' where username='lisi';`
con.query(sql,(err,result)=>{
if(err){
console.error(err);
return;
}
console.log(result);
})
//关闭连接
con.end();
NodeJS开发博客(二) 接入数据库的更多相关文章
- NodeJS开发博客(三) 数据的保存
什么是cookie 存储在浏览器的一段字符串(最大5k) 跨域不共享 格式如 k1=v1 k2=v2 因此可以存储结构化数据 每次发送http请求,会将请求域的cookie一起发送给server se ...
- NodeJS 开发博客(四) 日志及安全攻击
node 操作文件: const fs = require('fs'); const path = require('path'); const filename = path.resolve(__d ...
- NodeJS开发博客(一)
1 区分 ECMAScript/JS/NodeJs --ECMAScript.定义了语法,写JS和NodeJS都要遵守: 变量定义,循环/判断/函数: 原型和原形链/作用域和闭包/异步 不能操作DOM ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 接入GitHub,用JWT保护你的API
上一篇文章(https://www.cnblogs.com/meowv/p/12924859.html)再次把Swagger的使用进行了讲解,完成了对Swagger的分组.描述和开启小绿锁以进行身份的 ...
- NodeJS 开发博客(五) 使用express脚手架
1 安装脚手架 npm i express-generator -g 2 使用 express 命令 生成 项目 express-test express express-test 3. npm ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(二)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(二)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(一)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
- 基于 abp vNext 和 .NET Core 开发博客项目 - 博客接口实战篇(三)
系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...
随机推荐
- WXS --注释
- .net core中关于System.Text.Json的使用
在.Net Framework的时候序列化经常使用Newtonsoft.Json插件来使用,而在.Net Core中自带了System.Text.Json,号称性能更好,今天抽空就来捣鼓一下. 使用起 ...
- 线性链条件随机场(CRF)的原理与实现
基本原理 损失函数 (线性链)CRF通常用于序列标注任务,对于输入序列\(x\)和标签序列\(y\),定义匹配分数: \[ s(x,y) = \sum_{i=0}^l T(y_i, y_{i+1}) ...
- pytorch1.0实现RNN-LSTM for Classification
import torch from torch import nn import torchvision.datasets as dsets import torchvision.transforms ...
- [转帖]一文尽懂 USB4
一文尽懂 USB4 https://www.ithome.com/0/451/062.htm 今年 3 月份,USB Promoter Group(领导小组)首次发布了 USB4 规范,即下一代 US ...
- Java中常用的设计模式代码与理解
Java中常用的设计模式代码与理解 一.单例模式 1.饿汉式 (太饿了,类加载的时候就创建实例) /** * 饿汉式单例模式 */ public class HungrySingleInstance ...
- Python28之文件1
因为懂你,所以永恒 一.文件处理的重要性: 程序处理的数据都是在提取到内存,然后由CPU进行处理,而当断电或系统异常关机时,程序所处理的结果在内存中不会被保存.像永久的保存处理结果,对于windows ...
- 为什么无人机测量主流现在都不用RTK技术,而是PPK技术【转】
为什么无人机测量主流现在都不用RTK技术,而是PPK技术_宇辰网_让世界读懂无人机_全球专业无人机资讯|电商|大数据服务平台 大疆Phantom 4 RTK正式发布_宇辰网_让世界读懂无人机_全球专业 ...
- Apollo 与 .net core
appsettings配置内容 { "Apollo": { "AppId": "netcore", "Env": &qu ...
- vue组件上动态添加和删除属性
1.vue组件上动态添加和删除属性 // 添加 this.$set(this.obj, 'propName', val) // 删除 this.$delete(this.obj, 'propName' ...