使用node.js对MySQL进行增删改查操作

在此简单记录一下使用node.js对MySQL的一些操作

数据表的结构

我在MySQL里新建了一个名为wg_database的数据库,在该数据库里新建了一个my_tbl的数据表,如下图:

数据表截图.png

这张表里的字段如下图:
字段.png

从图片里可以看到表里有5条数据,现在对它们进行增删改查的操作。

增加一条数据

// 连接数据库
let mysql = require('mysql')
let connection = mysql.createConnection({
    host: '127.0.0.1',
    user: 'root',
    password: '',
    database: 'wg_database'
})
connection.connect()
// 插入一条数据
let post = {
    my_id: 6,
    my_title: 'title6',
    my_author: '小金',
    submission_date: '2018-07-06'

}
let insertSql = 'INSERT INTO my_tbl SET ?'
connection.query(insertSql, post, function (error, results) {
    if (error) throw error;
    console.log(results)
})
connection.end()

把以上代码保存到一个js文件中,可以命名为testSql.js,在终端中执行node testSql.js。会看到终端输出如下:

OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 6,
  serverStatus: 2,
  warningCount: 0,
  message: '',
  protocol41: true,
  changedRows: 0 }

切换到Navicat中,查看my_tbl这张表,刷新一下,会发现这条数据已经插入进去了。

数据已经插入.png

删除一条数据

删除最后一条数据:

let mysql = require('mysql')
let connection = mysql.createConnection({
    host: '127.0.0.1',
    user: 'root',
    password: '',
    database: 'wg_database'
})
connection.connect()
// 删除数据
let delSql = 'DELETE FROM my_tbl WHERE my_id=6'
connection.query(delSql, function (error, results) {
    if (error) throw error;
    console.log(results)
})
connection.end()

在终端中执行node testSql.js,返回如下:

OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 2,
  warningCount: 0,
  message: '',
  protocol41: true,
  changedRows: 0 }

在数据表中查看,my_id=6的那条数据已经删除了。

修改数据

尝试把数据表中my_id=5的那条数据中的my_author改为小希submission_date改为2018-07-10,代码如下:

// 连接数据库
let mysql = require('mysql')
let connection = mysql.createConnection({
    host: '127.0.0.1',
    user: 'root',
    password: '',
    database: 'wg_database'
})
connection.connect()
// 删除数据
let updateSql = 'UPDATE my_tbl SET my_author = ?, submission_date = ? WHERE my_id = ?'
connection.query(updateSql, ['小希', '2018-07-10', 5], function (error, results) {
    if (error) throw error;
    console.log(results)
})
connection.end()

在终端中执行testSql.js,输出如下:

OkPacket {
  fieldCount: 0,
  affectedRows: 1,
  insertId: 0,
  serverStatus: 2,
  warningCount: 0,
  message: '(Rows matched: 1  Changed: 1  Warnings: 0',
  protocol41: true,
  changedRows: 1 }

返回数据表,刷新之后会发现,数据已经更新:


数据已经更新.png

查找数据

编写代码如下:

// 连接数据库
let mysql = require('mysql')
let connection = mysql.createConnection({
    host: '127.0.0.1',
    user: 'root',
    password: '',
    database: 'wg_database'
})
connection.connect()
// 查找数据
let selectSql = 'SELECT * FROM my_tbl'
connection.query(selectSql, function (error, results) {
    if (error) throw error;
    console.log(results)
})
connection.end()

在终端中执行testSql.js,得到如下输出:

[ RowDataPacket {
    my_id: 1,
    my_title: 'title1',
    my_author: '小明',
    submission_date: 2018-06-30T16:00:00.000Z },
  RowDataPacket {
    my_id: 2,
    my_title: 'title2',
    my_author: '小刘',
    submission_date: 2018-07-01T16:00:00.000Z },
  RowDataPacket {
    my_id: 3,
    my_title: 'title3',
    my_author: '小张',
    submission_date: 2018-07-02T16:00:00.000Z },
  RowDataPacket {
    my_id: 4,
    my_title: 'title4',
    my_author: '小王',
    submission_date: 2018-07-03T16:00:00.000Z },
  RowDataPacket {
    my_id: 5,
    my_title: 'title5',
    my_author: '小希',
    submission_date: 2018-07-09T16:00:00.000Z } ]

以上就是简单的对数据库增删改查的操作。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,635评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,628评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,971评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,986评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,006评论 6 394
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,784评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,475评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,364评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,860评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,008评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,152评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,829评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,490评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,035评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,156评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,428评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,127评论 2 356

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 31,940评论 2 89
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,323评论 0 9
  • 什么是数据库? 数据库是存储数据的集合的单独的应用程序。每个数据库具有一个或多个不同的API,用于创建,访问,管理...
    chen_000阅读 4,036评论 0 19
  • 你在做什么?我在仰望天空。30°的仰望是什么?是我想念她的角度。为什么要把头抬到30°?为了不让我的眼泪掉下来”是...
    减肥的女孩阅读 774评论 0 0
  • 每个人的记忆都是一座沙城,时间腐蚀着一切建筑,你步步回头,可是却只能往前走。
    方_圆_阅读 343评论 0 0