Create Table (ครีเอท เทเบิล) หรือ การสร้างตาราง
!! การสร้างตารางนี้สร้างขึ้นมาสำหรับเป็นตัวอย่างในการเขียน 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
);
ตัวอย่าง : การสร้างตารางที่มีชื่อว่า "z_testcreatetable" (แซด_เทสครีเอทเทเบิล)
ผลที่ได้ :
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) โดยกำหนดค่าคือห้ามซ้ำและห้ามมีค่าว่าง
สามารถศึกษาเพิ่มเติมได้ที่ คำสั่ง SQL ต่างๆ
www.postgresqltutorial.com Eng.ver
www.postgresql.org Eng.ver
โดย : http://www.mindphp.com