บทนำสู่ภาคต่อ
Sequealize เป็นไปตาม ORM ของ Node.js ตามสัญญาสำหรับเซิร์ฟเวอร์ต่างๆ เช่น Postgres, MySQL, MariaDB, SQLite และ Microsoft SQL Server
ต่อไปนี้เป็นคุณสมบัติหลักบางประการของ NodeJS ภาคต่อ -
-
รองรับการทำธุรกรรม
-
ความสัมพันธ์
-
กระตือรือร้นและขี้เกียจโหลด
-
อ่านการจำลอง และอื่นๆ...
การเชื่อมต่อกับ MySQL โดยใช้ Sequelize
-
เราจำเป็นต้องสร้างการเชื่อมต่อระหว่าง MySQL และ Node.js โดยใช้ Sequelize
-
หลังจากสร้างการเชื่อมต่อที่ประสบความสำเร็จด้วย sequelize เราจำเป็นต้องมีไฟล์สามไฟล์ต่อไปนี้สำหรับการกำหนดค่า โปรดสร้างไฟล์ต่อไปนี้อย่างระมัดระวังในโฟลเดอร์ที่เกี่ยวข้องเท่านั้น
-
SequelizeDemo> application.js
นี่จะเป็นไฟล์รูทของเราซึ่งจะเก็บตรรกะที่แท้จริงไว้
-
SequelizeDemo>utils>database.js
ซึ่งจะเก็บรายละเอียดการเชื่อมต่อกับ MySQL ทั้งหมด
-
SequelizeDemo>รุ่น>user.js
ซึ่งจะมีข้อมูลโมเดลที่จำเป็น
-
ตัวอย่าง
กำหนดค่า Database.js
const Sequelize = require('sequelize')
const sequelize = new Sequelize(
'YOUR_DB_NAME', // TutorialsPoint
'YOUR_DB_USER_NAME', // root
'YOUR_DB_PASSWORD', //root{
dialect: 'mysql',
host: 'localhost'
}
);
module.exports = sequelize โปรดป้อนข้อมูลทั้งหมดเพื่อเชื่อมต่อกับฐานข้อมูลของคุณ
กำหนดค่า User.js
ใช้ไฟล์นี้เพื่อกำหนดการจับคู่ระหว่างแบบจำลองกับตาราง
const Sequelize = require('sequelize')
const sequelize = require('../utils/database')
const User = sequelize.define('user', {
// Name of Column #1 and its properties defined: id
user_id:{
// Integer Datatype
type:Sequelize.INTEGER,
// Increment the value automatically
autoIncrement:true,
// user_id can not be null.
allowNull:false,
// To uniquely identify user
primaryKey:true
},
// Name of Column #2: name
name: { type: Sequelize.STRING, allowNull:false },
// Name of Column #3: email
email: { type: Sequelize.STRING, allowNull:false },
// Column: Timestamps
createdAt: Sequelize.DATE,
updatedAt: Sequelize.DATE,
})
module.exports = User กำหนดค่า app.js
ในการสร้างแบบจำลอง เราสามารถใช้หนึ่งในสองวิธี -
-
วิธีซิงค์ () − สร้างแบบจำลองเท่านั้นหากมีอยู่ หากมีโมเดลอยู่ จะไม่เขียนทับโมเดล
-
ซิงค์ ({force:true}) วิธีการ − จะสร้างโมเดลใหม่หากไม่มีโมเดล อย่างไรก็ตาม ถ้ามีโมเดลอยู่ มันจะเขียนทับโมเดลที่มีอยู่
// Importing the database model
const sequelize = require('./database')
// Importing the user model
const User = require('./user')
// Creating all the tables defined in user
sequelize.sync()
// You can change the user.js file
// And run this code to check if it overwrites the existing code.
sequelize.sync({force:true) ที่มีอยู่หรือไม่ ผลลัพธ์
ในการรันโปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้ -
C:\\Users\SequelizeDemo>> node app.js Executing (default): CREATE TABLE IF NOT EXISTS `users` (`user_id` INTEGER NOT NULL auto_increment , `name` VARCHAR(255) NOT NULL, `email` VARCHAR(255) NOT NULL, `createdAt` DATETIME, `updatedAt` DATETIME, PRIMARY KEY (`user_id`)) ENGINE=InnoDB; Executing (default): SHOW INDEX FROM `users`
ตอนนี้คุณสามารถตรวจสอบฐานข้อมูลของคุณ ตารางด้านบนจะถูกสร้างขึ้น