ฐานข้อมูล H2 - สร้าง
CREATE เป็นคำสั่ง SQL ทั่วไปที่ใช้สร้างตารางสคีมาลำดับมุมมองและผู้ใช้ในเซิร์ฟเวอร์ฐานข้อมูล H2
สร้างตาราง
Create Table เป็นคำสั่งที่ใช้ในการสร้างตารางที่ผู้ใช้กำหนดเองในฐานข้อมูลปัจจุบัน
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปสำหรับคำสั่ง Create Table
CREATE [ CACHED | MEMORY ] [ TEMP | [ GLOBAL | LOCAL ] TEMPORARY ]
TABLE [ IF NOT EXISTS ] name
[ ( { columnDefinition | constraint } [,...] ) ]
[ ENGINE tableEngineName [ WITH tableEngineParamName [,...] ] ]
[ NOT PERSISTENT ] [ TRANSACTIONAL ]
[ AS select ]
ด้วยการใช้ไวยากรณ์ทั่วไปของคำสั่งสร้างตารางเราสามารถสร้างตารางประเภทต่างๆเช่นตารางแคชตารางหน่วยความจำและตารางชั่วคราว ต่อไปนี้เป็นรายการเพื่ออธิบายประโยคต่างๆจากไวยากรณ์ที่กำหนด
CACHED- ตารางแคชเป็นประเภทเริ่มต้นสำหรับตารางปกติ ซึ่งหมายความว่าจำนวนแถวไม่ได้ถูก จำกัด โดยหน่วยความจำหลัก
MEMORY- ตารางหน่วยความจำเป็นประเภทเริ่มต้นสำหรับตารางชั่วคราว ซึ่งหมายความว่าตารางหน่วยความจำไม่ควรมีขนาดใหญ่เกินไปและข้อมูลดัชนีจะถูกเก็บไว้ในหน่วยความจำหลัก
TEMPORARY- ตารางชั่วคราวจะถูกลบขณะปิดหรือเปิดฐานข้อมูล โดยทั่วไปตารางชั่วคราวมีสองประเภท -
ประเภท GLOBAL - เข้าถึงได้โดยการเชื่อมต่อทั้งหมด
ประเภทท้องถิ่น - เข้าถึงได้โดยการเชื่อมต่อปัจจุบัน
ประเภทเริ่มต้นสำหรับตารางชั่วคราวคือประเภทส่วนกลาง ดัชนีของตารางชั่วคราวจะถูกเก็บไว้ในหน่วยความจำหลักเว้นแต่จะสร้างตารางชั่วคราวโดยใช้ CREATE CACHED TABLE
ENGINE - จำเป็นต้องใช้ตัวเลือก ENGINE เมื่อใช้งานตารางแบบกำหนดเองเท่านั้น
NOT PERSISTENT - เป็นตัวปรับแต่งเพื่อเก็บข้อมูลตารางที่สมบูรณ์ไว้ในหน่วยความจำและแถวทั้งหมดจะหายไปเมื่อปิดฐานข้อมูล
TRANSACTIONAL - เป็นคีย์เวิร์ดที่ทำธุรกรรมเปิดและคำสั่งนี้รองรับเฉพาะตารางชั่วคราว
ตัวอย่าง
ในตัวอย่างนี้ให้เราสร้างตารางชื่อ tutorials_tbl โดยใช้ข้อมูลที่กำหนดต่อไปนี้
ซีเนียร์ No | ชื่อคอลัมน์ | ประเภทข้อมูล |
---|---|---|
1 | ID | Int |
2 | หัวข้อ | วาร์ชาร์ (50) |
3 | ผู้เขียน | วาร์ชาร์ (20) |
4 | วันที่ยื่น | วันที่ |
แบบสอบถามต่อไปนี้ใช้เพื่อสร้างตาราง tutorials_tbl พร้อมกับข้อมูลคอลัมน์ที่กำหนด
CREATE TABLE tutorials_tbl (
id INT NOT NULL,
title VARCHAR(50) NOT NULL,
author VARCHAR(20) NOT NULL,
submission_date DATE
);
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(0) rows effected
สร้างสคีมา
Create Schema เป็นคำสั่งที่ใช้ในการสร้าง schema ที่ขึ้นอยู่กับผู้ใช้ภายใต้การอนุญาตเฉพาะ (ภายใต้ผู้ใช้ที่ลงทะเบียนในปัจจุบัน)
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง Create Schema
CREATE SCHEMA [ IF NOT EXISTS ] name [ AUTHORIZATION ownerUserName ]
ในไวยากรณ์ทั่วไปข้างต้น AUTHORIZATION เป็นคำหลักที่ใช้เพื่อระบุชื่อผู้ใช้ที่เกี่ยวข้อง คำสั่งนี้เป็นทางเลือกซึ่งหมายความว่าหากเราไม่ได้ระบุชื่อผู้ใช้คำสั่งนี้จะพิจารณาผู้ใช้ปัจจุบัน ผู้ใช้ที่ดำเนินการคำสั่งต้องมีสิทธิ์ของผู้ดูแลระบบเช่นเดียวกับเจ้าของ
คำสั่งนี้คอมมิตธุรกรรมเปิดในการเชื่อมต่อนี้
ตัวอย่าง
ในตัวอย่างนี้ให้เราสร้างสคีมาชื่อ test_schema ภายใต้ผู้ใช้ SA โดยใช้คำสั่งต่อไปนี้
CREATE SCHEMA test_schema AUTHORIZATION sa;
คำสั่งดังกล่าวสร้างผลลัพธ์ต่อไปนี้
(0) rows effected
สร้างลำดับ
ลำดับคือแนวคิดที่ใช้ในการสร้างตัวเลขโดยทำตามลำดับสำหรับ id หรือค่าคอลัมน์แบบสุ่ม
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่งสร้างลำดับ
CREATE SEQUENCE [ IF NOT EXISTS ] newSequenceName [ START WITH long ]
[ INCREMENT BY long ]
[ MINVALUE long | NOMINVALUE | NO MINVALUE ]
[ MAXVALUE long | NOMAXVALUE | NO MAXVALUE ]
[ CYCLE long | NOCYCLE | NO CYCLE ]
[ CACHE long | NOCACHE | NO CACHE ]
ไวยากรณ์ทั่วไปนี้ใช้เพื่อสร้างลำดับ ประเภทข้อมูลของลำดับคือBIGINT. ในลำดับนี้จะไม่มีการใช้ค่าซ้ำแม้ว่าธุรกรรมจะถูกย้อนกลับก็ตาม
ตัวอย่าง
ในตัวอย่างนี้ให้เราสร้างลำดับชื่อ SEQ_IDโดยใช้แบบสอบถามต่อไปนี้
CREATE SEQUENCE SEQ_ID;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(0) rows effected