- Node.js 教程
- Node.js - 首页
- Node.js - 简介
- Node.js - 环境搭建
- Node.js - 第一个应用程序
- Node.js - REPL终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调函数概念
- Node.js - 上传文件
- Node.js - 发送邮件
- Node.js - 事件
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 进程
- Node.js - 应用程序扩展
- Node.js - 打包
- Node.js - Express框架
- Node.js - RESTful API
- Node.js - 缓冲区
- Node.js - 流
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL入门
- Node.js - 创建MySQL数据库
- Node.js - MySQL 创建表
- Node.js - MySQL 插入数据
- Node.js - MySQL 从表中选择数据
- Node.js - MySQL WHERE子句
- Node.js - MySQL ORDER BY子句
- Node.js - MySQL 删除数据
- Node.js - MySQL 更新数据
- Node.js - MySQL JOIN操作
- Node.js MongoDB
- Node.js - MongoDB入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB 插入数据
- Node.js - MongoDB 查找数据
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB 删除数据
- Node.js - MongoDB 更新数据
- Node.js - MongoDB LIMIT子句
- Node.js - MongoDB JOIN操作
- Node.js 模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - 实用程序模块
- Node.js - Web模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用资源
- Node.js - 讨论
Node.js - 创建MySQL数据库
可以在 MySQL 服务器上创建多个数据库(或模式)。虽然我们可以使用 MySQL 查询 `CREATE DATABASE` 以及 Workbench 创建数据库,但我们感兴趣的是使用 Node.js 程序创建数据库。
数据库是我们将数据以表的形式存储的地方。我们使用 MySQL 查询 `CREATE DATABASE` 来创建数据库。
语法
以下是 MySQL 创建数据库查询的语法:
CREATE DATABASE IF NOT EXISTS database_name;
示例
创建一个您选择的数据库,这里我们为宠物商店创建一个数据库,因此将其命名为 `mydb`,并在 MySQL 命令行客户端运行“CREATE DATABASE”命令。
mysql> CREATE DATABASE IF NOT EXISTS mydb; Query OK, 1 row affected (0.02 sec)
为了验证数据库的创建,我们可以运行 `SHOW DATABASES` 查询:
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mydb | | mysql | | performance_schema | | sakila | | sys | | world | +--------------------+ 7 rows in set (0.00 sec)
con.query() 方法
由 `mysql.createConnection()` 方法返回的连接对象可以访问 `query()` 方法。任何有效的 MySQL 查询的字符串表示形式都作为参数传递给它。`query()` 方法的第二个参数是一个回调函数。`query()` 方法的使用如下:
con.query(sql, function (err, result) {. . . . . . });
我们只需要将 `query()` 函数中的“sql”参数更改为字符串格式的所需查询。
由于在 MySQL 中创建数据库的查询为 `"CREATE DATABASE $database_name"`,则使用 Node.js `con.query()` 函数创建数据库的语法变为:
con.query("CREATE DATABASE $database_name$;", function (err, result) { //Your code });
示例
下面的 JavaScript 示例尝试创建一个名为 `mydb` 的 MySQL 数据库。为此:
首先,您需要将查询函数中的“sql”参数替换为“CREATE DATABASE mydb;”,然后使用 node 运行该文件。
现在,要检查您是否已创建数据库,我们可以使用 MySQL 查询“SHOW DATABASES;”。为此,您需要再次执行 `con.query()` 函数,这次需要将“SHOW DATABASES;”查询作为第一个参数传递。
`SHOW DATABASES` 查询返回一个 RowDataPacket 对象数组。您需要将数组中的每个对象转换为字符串才能获取数据库名称。
运行一个循环来查看所有数据库及其名称,并找到您刚刚创建的数据库。
我们在创建数据库时添加了 IF NOT EXISTS 子句,因为我们不希望在数据库已存在的情况下创建数据库时发生任何错误。
var mysql = require('mysql'); var con = mysql.createConnection({ host: "localhost", user: "root", password: "mypassword" }); con.connect(function (err) { if (err) throw err; console.log("Connected!"); con.query("CREATE DATABASE IF NOT EXISTS mydb;", function (err, result) { if (err) throw err; console.log("Created database successfully"); }); con.query("SHOW DATABASES;", function (err, result) { if (err) throw err; console.log("Showing databases\n"); for (var i = 0; i < result.length; i++) { console.log(JSON.stringify(result[i])); } }) con.end(); });
输出
Connected! Created database successfully Showing databases {"Database":"information_schema"} {"Database":"mydb"} {"Database":"mysql"} {"Database":"performance_schema"} {"Database":"sakila"} {"Database":"sys"} {"Database":"world"}