อ่าน 3 นาที
ภาษานิยามข้อมูล
ในบริบทของ SQL ภาษา การกำหนดข้อมูล หรือ ภาษาการอธิบายข้อมูล ( DDL ) คือไวยากรณ์สำหรับการสร้างและแก้ไขวัตถุในฐานข้อมูล เช่น ตาราง ดัชนี และผู้ใช้ คำสั่ง DDL คล้ายกับ...
ภาษานิยามข้อมูล

ในบริบทของSQLภาษาการกำหนดข้อมูลหรือภาษาการอธิบายข้อมูล ( DDL ) คือไวยากรณ์สำหรับการสร้างและแก้ไขวัตถุในฐานข้อมูล เช่น ตาราง ดัชนี และผู้ใช้ คำสั่ง DDL คล้ายกับภาษาการเขียนโปรแกรม คอมพิวเตอร์ สำหรับการกำหนดโครงสร้างข้อมูลโดยเฉพาะอย่างยิ่งสคีมาของฐานข้อมูลตัวอย่างทั่วไปของคำสั่ง DDL ได้แก่ `index` CREATE, ALTER`index` และDROP`index` หากคุณเห็นไฟล์ .ddl นั่นหมายความว่าไฟล์นั้นมีคำสั่งสำหรับสร้างตาราง Oracle SQL Developer มีความสามารถในการส่งออก ERD ที่สร้างด้วย Data Modeler ไปยังไฟล์ .sql หรือไฟล์ .ddl ได้
ประวัติศาสตร์
แนวคิดของภาษาการกำหนดข้อมูลและชื่อของมันถูกนำมาใช้ครั้งแรกในความสัมพันธ์กับ แบบจำลองฐานข้อมูล Codasylซึ่งโครงสร้างของฐานข้อมูลถูกเขียนด้วยไวยากรณ์ภาษาที่อธิบายระเบียนฟิลด์และเซตของแบบจำลองข้อมูล ผู้ ใช้[ 1 ] ต่อมา ได้ถูกนำมาใช้เพื่ออ้างถึงส่วนย่อยของภาษาการสอบถามเชิงโครงสร้าง (SQL) สำหรับการประกาศตารางคอลัมน์ ชนิดข้อมูล และข้อจำกัด SQL -92ได้แนะนำภาษาการจัดการโครงสร้างและตารางข้อมูลโครงสร้างเพื่อสอบถามโครงสร้าง[ 2 ]ตารางข้อมูลเหล่านี้ถูกกำหนดเป็นSQL/SchemataในSQL:2003คำว่า DDL ยังถูกใช้ในความหมายทั่วไปเพื่ออ้างถึงภาษาที่เป็นทางการ ใดๆ สำหรับการอธิบายโครงสร้างข้อมูลหรือสารสนเทศ
ภาษาการสอบถามเชิงโครงสร้าง (SQL)
ภาษาสำหรับการอธิบายข้อมูลหลายภาษาใช้ไวยากรณ์แบบประกาศเพื่อกำหนดคอลัมน์และชนิดข้อมูล อย่างไรก็ตาม ภาษาการสอบถามเชิงโครงสร้าง (SQL) ใช้ชุดคำสั่งที่มีผลในการแก้ไขโครงสร้างของฐานข้อมูลโดยการเพิ่ม เปลี่ยนแปลง หรือลบคำจำกัดความของตารางหรือองค์ประกอบอื่นๆ คำสั่งเหล่านี้สามารถผสมผสานกับคำสั่ง SQL อื่นๆ ได้อย่างอิสระ ทำให้ DDL ไม่ใช่ภาษาที่แยกต่างหาก
สร้างคำสั่ง
คำ สั่ง createใช้สำหรับสร้างฐานข้อมูล ตาราง ดัชนี หรือโพรซีเดอร์ที่จัดเก็บใหม่
คำ สั่ง CREATEในSQLสร้างส่วนประกอบในระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ในข้อกำหนด SQL 1992 ประเภทของส่วนประกอบที่สามารถสร้างได้คือ สกีมาตารางมุมมองโดเมนชุดอักขระการเรียงลำดับการแปล และการยืนยัน[ 2 ]การใช้งานหลายอย่างขยายไวยากรณ์เพื่ออนุญาตให้สร้างองค์ประกอบเพิ่มเติม เช่น ดัชนีและโปรไฟล์ผู้ใช้ บางระบบ เช่นPostgreSQLและSQL Serverอนุญาตให้ใช้ CREATEและคำสั่ง DDL อื่นๆ ภายในธุรกรรมฐานข้อมูลดังนั้นจึงสามารถย้อนกลับได้[ 3 ] [ 4 ]
คำสั่งสร้างตาราง
คำสั่ง CREATEที่ใช้กันทั่วไปคือ คำสั่ง CREATE TABLEการใช้งานโดยทั่วไปคือ:
สร้างตาราง[ชื่อตาราง] ( [คำจำกัดความของคอลัมน์] ) [พารามิเตอร์ของตาราง]
คำจำกัดความของคอลัมน์มีดังนี้:
- รายการที่คั่นด้วยเครื่องหมายจุลภาค ซึ่งประกอบด้วยรายการใดรายการหนึ่งต่อไปนี้
- คำจำกัดความของคอลัมน์: [ชื่อคอลัมน์] [ชนิดข้อมูล] {NULL | NOT NULL} {ตัวเลือกคอลัมน์}
- คำจำกัดความ ของคีย์หลัก : คีย์หลัก ( [รายการคอลัมน์ที่คั่นด้วยเครื่องหมายจุลภาค] )
- ข้อจำกัด: {CONSTRAINT} [คำจำกัดความของข้อจำกัด]
- ฟังก์ชันเฉพาะของ RDBMS
ตัวอย่างคำสั่งในการสร้างตารางชื่อemployeesที่มีคอลัมน์ไม่กี่คอลัมน์มีดังนี้:
สร้างตารางemployees ( id INTEGER PRIMARY KEY , first_name VARCHAR ( 50 ) not null , last_name VARCHAR ( 75 ) not null , mid_name VARCHAR ( 50 ) not null , dateofbirth DATE not null );รูปแบบบางอย่างของCREATE TABLE DDLอาจรวมโครงสร้างคล้าย DML ( ภาษาจัดการข้อมูล ) เช่น ไวยากรณ์ CREATE TABLE AS SELECT (CTaS) ของ SQL [ 5 ]
คำแถลง DROP
คำ สั่ง DROPใช้สำหรับทำลายฐานข้อมูล ตาราง ดัชนี หรือวิวที่มีอยู่แล้ว
คำ สั่ง DROPในSQLใช้สำหรับลบส่วนประกอบออกจากระบบจัดการฐานข้อมูลเชิงสัมพันธ์ ( RDBMS) ประเภทของวัตถุที่สามารถลบได้นั้นขึ้นอยู่กับ RDBMS ที่ใช้งานอยู่ แต่ส่วนใหญ่รองรับการลบตารางผู้ใช้และฐานข้อมูลบางระบบ (เช่นPostgreSQL ) อนุญาตให้ใช้คำสั่ง DROP และคำสั่ง DDL อื่นๆ ภายในธุรกรรมและสามารถย้อนกลับได้การใช้งานทั่วไปนั้นง่ายมาก:
DROP objecttype objectname .
ตัวอย่างเช่น คำสั่งในการลบตารางชื่อemployeesคือ:
พนักงานDROP TABLE ;คำ สั่ง DROPแตกต่างจาก คำสั่ง DELETEและTRUNCATEตรงที่คำสั่ง DELETEและTRUNCATEไม่ได้ลบตารางทั้งหมดออกจากฐานข้อมูล ตัวอย่างเช่น คำสั่ง DELETEอาจลบข้อมูลบางส่วน (หรือทั้งหมด) จากตาราง แต่ยังคงรักษาตารางนั้นไว้ในฐานข้อมูล ในขณะที่ คำสั่ง DROPจะลบตารางทั้งหมดออกจากฐานข้อมูล
คำสั่ง ALTER
คำ สั่ง ALTERใช้สำหรับแก้ไขอ็อบเจ็กต์ที่มีอยู่แล้วในฐานข้อมูล
คำ สั่ง ALTERในSQLใช้สำหรับเปลี่ยนแปลงคุณสมบัติของอ็อบเจ็กต์ภายในระบบจัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) ประเภทของอ็อบเจ็กต์ที่สามารถเปลี่ยนแปลงได้นั้นขึ้นอยู่กับ RDBMS ที่ใช้งานอยู่ โดยทั่วไปจะใช้ดังนี้:
ALTER objecttype objectname parameters .
ตัวอย่างเช่น คำสั่งในการเพิ่ม (แล้วลบออก) คอลัมน์ชื่อbubblesสำหรับตารางที่มีอยู่แล้วชื่อsinkคือ:
ALTER TABLE sink ADD bubbles INTEGER ; ALTER TABLE sink DROP COLUMN bubbles ;คำสั่ง TRUNCATE
คำ สั่ง TRUNCATEใช้สำหรับลบข้อมูลทั้งหมดออกจากตาราง ซึ่งเร็วกว่า คำ สั่ง DELETE มาก
ลบข้อมูล ในตารางtable_name จนหมด;คำแถลงเกี่ยวกับความสมบูรณ์ของการอ้างอิง
คำสั่ง DDL อีกประเภทหนึ่งใน SQL ใช้สำหรับกำหนด ความสัมพันธ์ ความสมบูรณ์ของข้อมูลอ้างอิงซึ่งโดยทั่วไปจะนำไปใช้ในรูปแบบของคีย์หลักและคีย์รองในบางคอลัมน์ของตาราง คำสั่งทั้งสองนี้สามารถรวมอยู่ในคำสั่ง CREATE TABLEหรือALTER TABLE ได้
ภาษาอื่นๆ
- XML Schemaเป็นตัวอย่างหนึ่งของ DDL สำหรับXML
- JSON Schemaเป็นตัวอย่างหนึ่งของ DDL สำหรับJSON
- สกีมา DFDLเป็นตัวอย่างหนึ่งของ DDL ที่สามารถอธิบายรูปแบบข้อความและไบนารีได้หลายรูปแบบ
ดูเพิ่มเติม
- ภาษาควบคุมข้อมูล
- ภาษาการจัดการข้อมูล
- ภาษาการสอบถามข้อมูล
- เลือก (SQL)
- แทรก (SQL)
- อัปเดต (SQL)
- ลบ (SQL)
- ตัดทอน (SQL)
ลิงก์ภายนอก
- Oracle ALTER TABLE MODIFY column Archived 2021-04-21 at the Wayback Machine
- คำสั่ง DDL ใน Oracle (เก็บถาวรเมื่อ 2021-04-21 ที่Wayback Machine)
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ภาษานิยามข้อมูล
ในบริบทของ SQL ภาษา การกำหนดข้อมูล หรือ ภาษาการอธิบายข้อมูล ( DDL ) คือไวยากรณ์สำหรับการสร้างและแก้ไขวัตถุในฐานข้อมูล เช่น ตาราง ดัชนี และผู้ใช้ คำสั่ง DDL คล้ายกับ...
ประวัติศาสตร์
แนวคิดของภาษาการกำหนดข้อมูลและชื่อของมันถูกนำมาใช้ครั้งแรกในความสัมพันธ์กับ แบบจำลองฐานข้อมูล Codasyl ซึ่งโครงสร้างของ ฐานข้อมูล ถูกเขียนด้วย ไวยากรณ์ภาษา ที่อธิบาย ระเบียน ฟิลด์และ เซต ของ แบบจำลองข้อมูล ผู้ ใช้ [ 1 ] ต่อมา ได้...
ภาษาการสอบถามเชิงโครงสร้าง (SQL)
ภาษาสำหรับการอธิบายข้อมูลหลายภาษาใช้ไวยากรณ์แบบประกาศเพื่อกำหนดคอลัมน์และชนิดข้อมูล อย่างไรก็ตาม ภาษาการสอบถามเชิงโครงสร้าง (SQL) ใช้ชุดคำสั่งที่มีผลในการแก้ไขโครงสร้างของฐานข้อมูลโดยการเพิ่ม เปลี่ยนแปลง หรือลบคำจำกัดความของตารางหรือองค์ประกอบอื่นๆ...
สร้างคำสั่ง
คำ สั่ง create ใช้สำหรับสร้างฐานข้อมูล ตาราง ดัชนี หรือ โพรซีเดอร์ที่จัดเก็บ ใหม่