Creating Tables in MySQL from Node.js

摘要:在本教程中,您将学习如何从 Node.js 应用程序在 MySQL 数据库中创建新表。

要从 node.js 创建表,请使用以下步骤:

  1. 连接到 MySQL 数据库服务器
  2. connection对象上调用query()方法来执行CREATE TABLE语句。
  3. 关闭数据库连接。

以下示例 (query.js) 向您展示了如何连接到todoapp数据库并执行CREATE TABLE语句:

let mysql = require('mysql');
let connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  password: '',
  database: 'todoapp'
});

// connect to the MySQL server
connection.connect(function(err) {
  if (err) {
    return console.error('error: ' + err.message);
  }

  let createTodos = `create table if not exists todos(
                          id int primary key auto_increment,
                          title varchar(255)not null,
                          completed tinyint(1) not null default 0
                      )`;

  connection.query(createTodos, function(err, results, fields) {
    if (err) {
      console.log(err.message);
    }
  });

  connection.end(function(err) {
    if (err) {
      return console.log(err.message);
    }
  });
});
Code language: JavaScript (javascript)

query()方法接受 SQL 语句和回调。回调函数采用三个参数:

  • error:如果语句执行过程中发生错误,则存储详细的错误信息
  • results:包含查询的结果
  • fields:包含结果字段信息(如果有)

让我们执行一下程序:

> node query.js
Code language: JavaScript (javascript)

查询执行成功,没有错误。

我们来检查一下数据库中是否创建了todos表:

>mysql -u root -p todoapp;
Enter password: *********

mysql> show tables;
+-------------------+
| Tables_in_todoapp |
+-------------------+
| todos             |
+-------------------+
1 row in set (0.08 sec)
Code language: JavaScript (javascript)

如您所见, todos表是在todoapp数据库中创建的。

在本教程中,您学习了如何在 MySQL 数据库中创建新表。

本教程有帮助吗?