ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

Create Table with INHERITS (ครีเอท เทเบิล วิธ อินเฮริท) หรือ การสร้างตารางด้วยการสืบทอดตาราง

!! การสร้างตารางนี้สร้างขึ้นมาสำหรับเป็นตัวอย่างในการเขียน SQL บน PostgreSQL เท่านั้น

  ในบทความเรื่อง PostgreSQL : คำสั่ง SQL การ Create Table นั้น เป็นการสร้างตารางแบบพื้นฐาน ซึ่งจะทำการกำหนดชื่อตาราง ชื่อคอลัมน์ที่ต้องการ และค่าต่างๆ เอง

  ส่วนในบทความนี้ จะเป็นการสร้างตารางโดยวิธี INHERITS หรือ การสืบทอดคุณสมบัติ

INHERITS คืออะไร? 

“Inherits” หรือ “Inheritance” คือการสืบทอด Class (คลาส) จาก Class ต้นฉบับไปยัง Class ใหม่ โดยจะทำการ copy (ก๊อปปี้) สิ่งที่อยู่ใน Class ต้นฉบับไปยัง Class ใหม่ทั้งหมด อธิบายตามภาษาบ้านๆ ก็คือ การสืบทอดคุณสมบัติจากแม่ไปสู่ลูก

CREATE TABLE table_name (

  column_name TYPE column_constraint,

  table_constraint table_constraint

) INHERITS (existing_table_name);

อธิบายคำสั่ง

table_name (เทเบิล_เนม)    :  ชื่อตาราง

column_name (คอลลัมน์_เนม) :  ขื่อคอลัมน์

TYPE (ไทป์)                :  ชนิดของคอลัมน์

column_constraint (คอลลัมน์_คอนสเตรนท) :  ข้อจำกัดของคอลัมน์

table_constraint (เทเบิล_คอนสเตรนท)  : ข้อจำกัดของตาราง

INHERITS (อินเฮริท)      :  คำสั่งการสืบทอด

existing_table_name (เอ็กซิสทิ้ง_เทเบิล_เนม) :  ชื่อตารางที่ต้องการสืบทอดมา

ตัวอย่างการสร้างตาราง

CREATE TABLE z_testcreatetable_inherit(

  in_id serial PRIMARY KEY,

  in_name VARCHAR (255) UNIQUE NOT NULL

) INHERITS (z_testcreatetable);

ตัวอย่าง : 

การสร้างตารางแบบสืบทอด
การสร้างตารางแบบสืบทอด

ผลที่ได้ :

CREATE TABLE z_testcreatetable_inherit

(

-- Inherited from table z_testcreatetable:  id character varying(5) NOT NULL,

-- Inherited from table z_testcreatetable:  username character varying(50) NOT NULL,

-- Inherited from table z_testcreatetable:  pass character varying(50) NOT NULL,

-- Inherited from table z_testcreatetable:  email character varying(355) NOT NULL,

       in_id serial NOT NULL,

       in_name character varying(255) NOT NULL,

  CONSTRAINT z_testcreatetable_inherit_pkey PRIMARY KEY (in_id),

  CONSTRAINT z_testcreatetable_inherit_  in_name_key  UNIQUE (in_name)

)

INHERITS (z_testcreatetable)

WITH (

  OIDS=FALSE

);

ALTER TABLE z_testcreatetable_inherit

  OWNER TO openpg;

คำอธิบาย : 

ในตัวอย่าง เป็นการสร้างตารางที่มีชื่อว่า "z_testcreatetable_inherit" (แซดเทสครีเอทเทเบิล_อินเฮริท)โดยทำการสืบทอดคุณสมบัติของตาราง "z_testcreatetable" มาใช้โดยคำสั่ง Inherited from table z_testcreatetable: ซึ่งจะนำ คอลัมน์ id (ไอดี), username (ยูสเซอร์เนม), pass (พาส) และ email (อีเมล)มาโดยที่ผู้ใช้ไม่ต้องพิมพ์เอง

สามารถศึกษาเพิ่มเติมได้ที่ คำสั่ง SQL ต่างๆ

www.postgresqltutorial.com Eng.ver

www.postgresql.org Eng.ver

โดย : http://www.mindphp.com

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
B - demo Print loading list ภาษาไทยไม่แสดง
โดย mindphp อ 17 มิ.ย. 2018 12:09 am บอร์ด บริษัท เซนิธ เบบี้ แคร์ จำกัด - Tester
1
2
อ 17 มิ.ย. 2018 12:28 am โดย mindphp
B - มีโมดูลเกินใน demo
โดย mindphp ส 16 มิ.ย. 2018 11:53 pm บอร์ด บริษัท เซนิธ เบบี้ แคร์ จำกัด - Tester
0
1
ส 16 มิ.ย. 2018 11:53 pm โดย mindphp
Q - วิธีเรียกตัวแปรมาใช้ในไฟล์ php ที่แสดงในหน้าเว็บใน JoomShopping
โดย Parichat ส 16 มิ.ย. 2018 6:58 pm บอร์ด Joomla Dev
18
44
อ 17 มิ.ย. 2018 10:11 pm โดย Parichat
B - com_mcharts สามารถติดตั้งได้แต่ไม่สามารถเข้าหน้าตั่งค่าได้
โดย Parichat ส 16 มิ.ย. 2018 5:12 pm บอร์ด M061 - ปาริชาติ รัตโณภาส
0
1
ส 16 มิ.ย. 2018 5:12 pm โดย Parichat
B - com_MJUpgrade ไม่สามารถติดตั้งได้
โดย Parichat ส 16 มิ.ย. 2018 4:48 pm บอร์ด M061 - ปาริชาติ รัตโณภาส
0
1
ส 16 มิ.ย. 2018 4:48 pm โดย Parichat
B - com_M2OpenERP Migration สามารถติดตั้งได้แต่ไม่สามารถใช้งานได้
โดย Parichat ส 16 มิ.ย. 2018 4:31 pm บอร์ด M2OpenERP
0
2
ส 16 มิ.ย. 2018 4:31 pm โดย Parichat
controller เรียกใช้ function ใน model ใน JoomShopping
โดย Parichat ส 16 มิ.ย. 2018 3:38 pm บอร์ด Joomla Developing Knowledge
0
21
ส 16 มิ.ย. 2018 3:38 pm โดย Parichat
งานประจำวันที่ 16 มิถุนายน 2561
โดย Rujikon ส 16 มิ.ย. 2018 9:40 am บอร์ด M060 - นายรุจิกร พงษ์พิละ
2
4
ส 16 มิ.ย. 2018 7:06 pm โดย Rujikon
งานประจำวันที่ 16 มิถุนายน 2561
โดย Parichat ส 16 มิ.ย. 2018 9:35 am บอร์ด M061 - ปาริชาติ รัตโณภาส
1
2
ส 16 มิ.ย. 2018 7:09 pm โดย Parichat
งานประจำวันที่ 16 มิถุนายน 2561
โดย wilawan ส 16 มิ.ย. 2018 8:33 am บอร์ด M062 - วิลาวัณย์ นักษัตรมณฑล
2
10
ส 16 มิ.ย. 2018 7:02 pm โดย thatsawan
upload file ไม่เข้าค่ะผิดตรงไหนค่ะ รบกวนแนะนำหน่อยค่ะ _/|\_
โดย supattra_su ศ 15 มิ.ย. 2018 6:08 pm บอร์ด Programming - PHP
1
40
ส 16 มิ.ย. 2018 1:03 am โดย mindphp
ฺB - In Process ชื่อลูกค้าหาย [2018-01][017]
โดย Rujikon ศ 15 มิ.ย. 2018 5:53 pm บอร์ด Hachanna - Testter
0
4
ศ 15 มิ.ย. 2018 5:53 pm โดย Rujikon
R - อัพเดท state auto หลังจาก state ของ RMA เป็น deliver
โดย nuattawoot ศ 15 มิ.ย. 2018 5:13 pm บอร์ด อาร์ซีพี โกลบอล จำกัด - Tester
2
12
ส 16 มิ.ย. 2018 1:53 pm โดย Rujikon
Q - ทำให้รูปฟีเจอร์ของสินค้าคลิกไปแล้วให้ได้ตรงกับสินค้าที่เปิดเข้าไปดู
โดย Parichat พฤ 14 มิ.ย. 2018 5:24 pm บอร์ด Joomla Dev
36
86
ส 16 มิ.ย. 2018 10:04 am โดย Parichat
บริษัท Hachana แจ้งอัพข้อมูล
โดย Rujikon ศ 15 มิ.ย. 2018 3:48 pm บอร์ด Mindphp Task (ทดลองงาน)
0
7
ศ 15 มิ.ย. 2018 3:48 pm โดย Rujikon
R - ERP ของบริษัท Expenses จะต้องไม่เห็นค่าใช้จ่ายของคนอื่น (M055) เห็นหมดเลย
โดย thatsawan ศ 15 มิ.ย. 2018 2:23 pm บอร์ด M.D.Soft Co.,Ltd. - Tester
1
3
ศ 15 มิ.ย. 2018 2:23 pm โดย thatsawan
วิธีหาวันเเรกเเละวันที่สิ้นสุด ของปีใน python
โดย thatsawan ศ 15 มิ.ย. 2018 1:24 pm บอร์ด Python Knowledge
0
16
ศ 15 มิ.ย. 2018 1:24 pm โดย thatsawan
หลักการเก็บข้อมูลสำหรับการพัฒนาระบบ
โดย wilawan ศ 15 มิ.ย. 2018 1:23 pm บอร์ด M062 - วิลาวัณย์ นักษัตรมณฑล
0
6
ศ 15 มิ.ย. 2018 1:23 pm โดย wilawan
B - หน้ารายการสินค้าต้องมีกรอบสีขาว
โดย tsukasaz ศ 15 มิ.ย. 2018 11:44 am บอร์ด Doy-shop ( 15 พ.ค. - 29 พ.ค. 61)
1
7
ศ 15 มิ.ย. 2018 12:15 pm โดย Parichat
งานประจำวันที่ 15 มิถุนายน 2561
โดย Rujikon ศ 15 มิ.ย. 2018 9:47 am บอร์ด M060 - นายรุจิกร พงษ์พิละ
1
9
ศ 15 มิ.ย. 2018 6:41 pm โดย Rujikon