基础

创建数据库

  1. let mysql = require('mysql');
  2. let connection = mysql.createConnection({
  3. host: 'localhost',
  4. user: 'root',
  5. password: '123456',
  6. });
  7. connection.connect();
  8. connection.query('CREATE DATABASE IF NOT EXISTS prac1 DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_unicode_520_ci;',
  9. function (error, results, fields) {
  10. if (error) throw error;
  11. console.log('The solution is: ', results);
  12. });
  13. connection.end();

选择库

  1. connection.query('use prac1;');

创建数据表

  1. connection.query(`CREATE TABLE IF NOT EXISTS user1(
  2. name text,
  3. gender char(1),
  4. age int
  5. );`,
  6. function (error, results, fields) {
  7. if (error) throw error;
  8. console.log('The solution is: ', results);
  9. });

描述

  1. describe user1;

sequelize

  1. npm i sequelize
  2. npm i @types/sequelize
  3. npm i mysql2

需要安装mysql2

创建

  1. const {Sequelize, Model, DataTypes} = require('sequelize');
  2. const sequelize = new Sequelize('prac1', 'root', '123456', {
  3. host:'',
  4. dialect: 'mysql'
  5. });
  6. //创建user模型
  7. class User extends Model {
  8. }
  9. //初始化user
  10. User.init({
  11. username: DataTypes.STRING,
  12. birthday: DataTypes.DATE,
  13. }, {sequelize, modelName: 'user'});
  14. //同步到数据库
  15. sequelize.sync()
  16. //创建一条记录
  17. .then(() => User.create({
  18. username: 'janedoe',
  19. birthday: new Date(1980, 6, 20),
  20. }))
  21. //打印结果
  22. .then(jane => {
  23. console.log(jane.toJSON());
  24. });

查询

  1. let run = async ()=>{
  2. const users = await User.findAll();
  3. console.log(JSON.stringify(users));
  4. await sequelize.close();
  5. }
  6. run();

删除

  1. User.destroy({
  2. where: {
  3. id:1
  4. }
  5. });