Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ระบุนามคอลัมน์ในคำสั่ง INSERT ของ MySQL (SET Syntax)

บทความนี้แนะนำรูปแบบคำสั่ง INSERT ... SET ใน MySQL ที่อนุญาตให้ระบุนามคอลัมน์และค่าเป็นคู่ key-value ทำให้อ่านง่ายและไม่ต้องจดลำดับคอลัมน์

สร้างตารางและเพิ่มข้อมูลด้วย SET Syntax

mysql> CREATE TABLE DemoTable674(
    StudentId INT,
    StudentFirstName VARCHAR(100),
    StudentLastName VARCHAR(100)
);
Query OK, 0 rows affected (0.82 sec)

mysql> INSERT INTO DemoTable674 SET StudentId=10, StudentFirstName='John', StudentLastName='Smith';
mysql> INSERT INTO DemoTable674 SET StudentId=11, StudentFirstName='Carol', StudentLastName='Taylor';
mysql> INSERT INTO DemoTable674 SET StudentId=12, StudentFirstName='David', StudentLastName='Miller';
mysql> INSERT INTO DemoTable674 SET StudentId=13, StudentFirstName='Chris', StudentLastName='Brown';

ผลลัพธ์

+-----------+------------------+-----------------+
| StudentId | StudentFirstName | StudentLastName |
+-----------+------------------+-----------------+
| 10        | John             | Smith           |
| 11        | Carol            | Taylor          |
| 12        | David            | Miller          |
| 13        | Chris            | Brown           |
+-----------+------------------+-----------------+

ข้อดีของ INSERT ... SET:

  • อ่านง่าย ชัดเจนว่าแต่ละคอลัมน์ได้ค่าอะไร
  • ไม่ต้องกังวลลำดับคอลัมน์
  • ง่ายต่อการแก้ไข/เพิ่ม/ลบคอลัมน์ในคำสั่ง
  • รองรับใน MySQL เท่านั้น (Non-standard SQL)

รูปแบบมาตรฐาน SQL (Portable):

INSERT INTO DemoTable674 (StudentId, StudentFirstName, StudentLastName)
VALUES (10, 'John', 'Smith');