ฐานข้อมูล H2 - แก้ไข
ALTER เป็นคำสั่งที่ใช้ในการเปลี่ยนโครงสร้างตารางโดยการเพิ่มส่วนคำสั่งต่างๆลงในไฟล์ alterคำสั่ง ตามสถานการณ์เราจำเป็นต้องเพิ่มส่วนคำสั่งที่เกี่ยวข้องให้กับคำสั่ง alter ในบทนี้เราจะพูดถึงสถานการณ์ต่างๆของคำสั่งแก้ไข
แก้ไขตารางเพิ่ม
Alter Table Add เป็นคำสั่งที่ใช้ในการเพิ่มคอลัมน์ใหม่ในตารางพร้อมกับชนิดข้อมูลที่เกี่ยวข้อง คำสั่งนี้ทำธุรกรรมในการเชื่อมต่อนี้
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง Alter Table Add
ALTER TABLE [ IF EXISTS ] tableName ADD [ COLUMN ]
{ [ IF NOT EXISTS ] columnDefinition [ { BEFORE | AFTER } columnName ]
| ( { columnDefinition } [,...] ) }
ตัวอย่าง
ในตัวอย่างนี้เราจะเพิ่มคอลัมน์ใหม่ start_date ไปที่โต๊ะ tutorials_tbl. ประเภทข้อมูลสำหรับ start_date คือ Date ต่อไปนี้เป็นแบบสอบถามเพื่อเพิ่มคอลัมน์ใหม่
ALTER TABLE tutorials_tbl ADD start_date DATE;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(6) rows effected
แก้ไขข้อ จำกัด เพิ่มตาราง
Alter table add constraint เป็นคำสั่งที่ใช้ในการเพิ่มข้อ จำกัด ต่าง ๆ ให้กับตารางเช่นคีย์หลักคีย์นอกไม่ใช่ null เป็นต้น
ดัชนีที่จำเป็นจะถูกสร้างขึ้นโดยอัตโนมัติหากยังไม่มีอยู่ ไม่สามารถปิดการตรวจสอบข้อ จำกัด เฉพาะได้ คำสั่งนี้คอมมิตธุรกรรมเปิดในการเชื่อมต่อนี้
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง Alter table add constraint
ALTER TABLE [ IF EXISTS ] tableName ADD constraint [ CHECK | NOCHECK ]
ตัวอย่าง
ในตัวอย่างนี้ให้เราเพิ่มข้อ จำกัด ของคีย์หลัก (tutorials_tbl_pk) ไปยังรหัสคอลัมน์ของตาราง tutorials_tblโดยใช้แบบสอบถามต่อไปนี้
ALTER TABLE tutorials_tbl ADD CONSTRAINT tutorials_tbl_pk PRIMARYKEY(id);
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(6) row (s) effected
แก้ไขข้อ จำกัด การเปลี่ยนชื่อตาราง
คำสั่งนี้ใช้เพื่อเปลี่ยนชื่อข้อ จำกัด ของตารางความสัมพันธ์เฉพาะ คำสั่งนี้คอมมิตธุรกรรมเปิดในการเชื่อมต่อนี้
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง Alter Table Rename Constraint
ALTER TABLE [ IF EXISTS ] tableName RENAME oldConstraintName TO newConstraintName
ในขณะที่ใช้ไวยากรณ์นี้ตรวจสอบให้แน่ใจว่าชื่อข้อ จำกัด เก่าควรมีอยู่ในคอลัมน์ที่เกี่ยวข้อง
ตัวอย่าง
ในตัวอย่างนี้เราจะเปลี่ยนชื่อข้อ จำกัด คีย์หลักของตาราง tutorials_tbl จาก tutorials_tbl_pk ถึง tutorials_tbl_pk_constraint. ต่อไปนี้เป็นแบบสอบถามที่ต้องทำ
ALTER TABLE tutorials_tbl RENAME CONSTRAINT
tutorials_tbl_pk TO tutorials_tbl_pk_constraint;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(1) row (s) effected
แก้ไขคอลัมน์แก้ไขตาราง
คำสั่งนี้ใช้เพื่อเปลี่ยนโครงสร้างและคุณสมบัติของคอลัมน์ของตารางเฉพาะ การเปลี่ยนคุณสมบัติหมายถึงการเปลี่ยนประเภทข้อมูลของคอลัมน์เปลี่ยนชื่อคอลัมน์เปลี่ยนค่าข้อมูลประจำตัวหรือเปลี่ยนการเลือก
ไวยากรณ์
ต่อไปนี้เป็นไวยากรณ์ทั่วไปของคำสั่ง Alter Table Alter Column
ALTER TABLE [ IF EXISTS ] tableName ALTER COLUMN columnName
{ { dataType [ DEFAULT expression ] [ [ NOT ] NULL ] [ AUTO_INCREMENT | IDENTITY ] }
| { RENAME TO name }
| { RESTART WITH long }
| { SELECTIVITY int }
| { SET DEFAULT expression }
| { SET NULL }
| { SET NOT NULL } }
ในไวยากรณ์ข้างต้น -
RESTART - คำสั่งเปลี่ยนค่าถัดไปของคอลัมน์การเพิ่มอัตโนมัติ
SELECTIVITY- คำสั่งตั้งค่าการเลือก (1-100) สำหรับคอลัมน์ จากค่าการเลือกเราสามารถแสดงภาพค่าของคอลัมน์ได้
SET DEFAULT - เปลี่ยนค่าเริ่มต้นของคอลัมน์
SET NULL - ตั้งค่าคอลัมน์เพื่อให้เป็น NULL
SET NOT NULL - ตั้งค่าคอลัมน์เพื่อให้ไม่เป็นโมฆะ
ตัวอย่าง
ในตัวอย่างนี้เราจะเปลี่ยนชื่อคอลัมน์ของตาราง tutorials_tbl จาก Title ถึง Tutorial_Title โดยใช้แบบสอบถามต่อไปนี้
ALTER TABLE tutorials_tbl ALTER COLUMN title RENAME TO tutorial_title;
แบบสอบถามข้างต้นสร้างผลลัพธ์ต่อไปนี้
(0) row(s) effected
ในทำนองเดียวกันเราสามารถดำเนินการสถานการณ์ต่างๆได้ด้วยคำสั่ง ALTER