!! การสร้างตารางนี้สร้างขึ้นมาสำหรับเป็นตัวอย่างในการเขียน SQL บน PostgreSQL เท่านั้น
ใน PostgreSQL สามารถใช้คำสั่งต่อไปนี้เพื่อทำการสร้างตารางใหม่
โค้ด: เลือกทั้งหมด
CREATE TABLE table_name (
column_name TYPE column_constraint,
table_constraint table_constraint
);
table_name : ชื่อตาราง
column_name : ขื่อคอลัมน์
TYPE : ชนิดของคอลัมน์
column_constraint : ข้อจำกัดของคอลัมน์
table_constraint : ข้อจำกัดของตาราง
ประเภทของ CONSTRAINT
- NOT NULL ค่าของข้อมูลในคอลัมน์นั้นๆ จะต้องไม่เป็นค่าว่าง
- UNIQUE เป็นการบังคับโดยระบุว่าค่าของข้อมูลในคอลัมน์นั้นๆ (คอลัมน์ในวงเล็บ) จะต้องไม่ซ้ำกัน
- CHECK ตรวจสอบเงื่อนไขก่อนทำการเพิ่มหรือแก้ไขข้อมูล
- PRIMARY KEY เป็นการกำหนดคีย์หลัก โดยที่จะประกอบไปด้วยหลายคอลัมน์ ซึ่งในแต่ละคอลัมน์จะนำคุณสมบัติของ NOT NULL และ UNIQUE มาใช้ทันที
- FOREIGN KEY เป็นคีย์รอง สำหรับใช้ทำงานร่วมกับ PRIMARY KEY ในการสร้างความสัมพันธ์กับตารางอื่น
- DEFAULT ในกรณีที่ไม่มีการกำหนดค่าใดๆ ลงในตาราง ข้อมูลจะเป็นค่าเริ่มต้นที่ได้กำหนดไว้ทันที
ตัวอย่างการสร้างตาราง
โค้ด: เลือกทั้งหมด
CREATE TABLE z_testcreatetable(
id VARCHAR (5) PRIMARY KEY,
username VARCHAR (50) UNIQUE NOT NULL,
pass VARCHAR (50) NOT NULL,
email VARCHAR (355) UNIQUE NOT NULL
);
โค้ด: เลือกทั้งหมด
CREATE TABLE z_testcreatetable
(
id character varying(5) NOT NULL,
username character varying(50) NOT NULL,
pass character varying(50) NOT NULL,
email character varying(355) NOT NULL,
CONSTRAINT z_testcreatetable_pkey PRIMARY KEY (id),
CONSTRAINT z_testcreatetable_ email_key" UNIQUE (email),
CONSTRAINT z_testcreatetable_ username_key" UNIQUE (username)
)
WITH (
OIDS=FALSE
);
ALTER TABLE z_testcreatetable
OWNER TO openpg;
ดังตัวอย่าง เป็นการสร้างตารางที่มีชื่อว่า "z_testcreatetable"
โดยในตารางจะประกอบไปด้วย
- คอลัมน์ id มีประเภท(TYPE) เป็น VARCHAR มีขนาด (5) เป็นคีย์หลักของตาราง (PRIMARY KEY)
- คอลัมน์ username มีประเภท(TYPE) เป็น VARCHAR มีขนาด (50) โดยกำหนดค่าคือห้ามซ้ำและห้ามมีค่าว่าง
- คอลัมน์ pass มีประเภท(TYPE) เป็น VARCHAR มีขนาด (50) โดยกำหนดค่าคือห้ามมีค่าว่าง
- คอลัมน์ email มีประเภท(TYPE) เป็น VARCHAR มีขนาด (355) โดยกำหนดค่าคือห้ามซ้ำและห้ามมีค่าว่าง
ศึกษาเพิ่มเติมได้ที่ :
www.postgresqltutorial.com Eng.ver
www.postgresql.org Eng.ver