ให้เรตสมาชิก: 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ตำแหน่งไฟล์ ที่เก็บ my.cnf ไฟล์ ตั้งค่าระบบของ MySQL เวอร์ชั่นต่างๆ และ ติดตั้งบน OS ต่างๆ
โดย mindphp พ 01 ม.ค. 2020 1:24 pm บอร์ด Linux - Web Server
0
26
พ 01 ม.ค. 2020 1:24 pm โดย mindphp
เปิดใช้งาน log_slow_queries MySQL 5.7 บน Ubuntu
โดย mindphp อ 31 ธ.ค. 2019 5:55 pm บอร์ด Linux - Web Server
0
732
อ 31 ธ.ค. 2019 5:55 pm โดย mindphp
อยากทราบวิธีการแสดงที่มี id ซ้ำกันครับ
โดย jamepiyawat ส 28 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
3
92
พฤ 02 ม.ค. 2020 8:47 am โดย tsukasaz
ปฏิทินประจําปี 2563 นักษัตย์ 12 ราศี ของจีนที่เรามักคุ้นเคยกัน
โดย noppadonsk ส 28 ธ.ค. 2019 10:40 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
247
ส 04 ม.ค. 2020 4:38 am โดย mindphp
คำสั่งจาก LINE API บันทึกเรียบร้อยแล้ว แต่ไม่เข้าไปใน inbox e-mail : order@dapper.com [2019-12][002]
โดย thatsawan ศ 27 ธ.ค. 2019 5:56 pm บอร์ด MD-CRM - Tester
2
5
ศ 27 ธ.ค. 2019 9:25 pm โดย mindphp
อยากทราบวิธีการอัพโหลดรูปภาพลงใน9kik'ฐานข้อมูล ของ phpbb
โดย Ittichai_chupol ศ 27 ธ.ค. 2019 4:22 pm บอร์ด Programming - PHP
1
83
ศ 27 ธ.ค. 2019 4:38 pm โดย thatsawan
ปฏิทินประจําปี 2563 ธีมการศึกษาสำหรับเด็กเรียน
โดย noppadonsk ศ 27 ธ.ค. 2019 10:41 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
285
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - ข้อมุลเชื่อม ตำบลที่มี รหัสไปรษณี ไม่เหมือน อำเภอข้อมมูลผิด
โดย mindphp พฤ 26 ธ.ค. 2019 3:01 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 26 ธ.ค. 2019 3:01 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในธีมปาร์ตี้และการเฉลิมฉลอง
โดย noppadonsk พฤ 26 ธ.ค. 2019 1:51 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
238
ส 04 ม.ค. 2020 4:38 am โดย mindphp
B - SQL ทำงานช้า
โดย mindphp พ 25 ธ.ค. 2019 10:07 pm บอร์ด Odoojob.com - Tester
0
1
พ 25 ธ.ค. 2019 10:07 pm โดย mindphp
ทิปเล็กๆ การใช้งาน Directadmin บน Ubuntu หรือ CentOS ใช้ .tar.gz จะทำงานได้เร็วกว่า..
โดย mindphp พ 25 ธ.ค. 2019 8:53 pm บอร์ด Linux - Web Server
0
32
พ 25 ธ.ค. 2019 8:53 pm โดย mindphp
เครื่องมือในการคำนวณภาษีหัก ณ ที่จ่าย ลดภาระการเสียภาษีก้อนใหญ่ได้ง่ายๆ
โดย prmindphp พ 25 ธ.ค. 2019 6:56 pm บอร์ด MindPHP News & Feedback
0
31
พ 25 ธ.ค. 2019 6:56 pm โดย prmindphp
วิธีการเขียน SQL เพื่อเปลี่ยนชื่อตาราง ในฐานข้อมูลเมื่อมีการเขียนชื่อตารางผิด
โดย Ittichai_chupol พ 25 ธ.ค. 2019 5:15 pm บอร์ด SQL Knowledge
0
29
พ 25 ธ.ค. 2019 5:15 pm โดย Ittichai_chupol
แก้ปัญหา ใช้ Python โอนย้ายไฟล์ข้ามเครื่อง ด้วย ftplib แล้วเจอ Connection timed out
โดย mindphp พ 25 ธ.ค. 2019 1:21 pm บอร์ด Python Knowledge
0
38
พ 25 ธ.ค. 2019 1:21 pm โดย mindphp
ตัวช่วยในคำนวณอัตราดอกเบี้ยสำหรับนักลงทุน
โดย prmindphp อ 24 ธ.ค. 2019 6:52 pm บอร์ด MindPHP News & Feedback
0
32
อ 24 ธ.ค. 2019 6:52 pm โดย prmindphp
วิธีการดึงกลุ่มของ phpbb มาสร้างเป็น listbox พร้อมเปลี่ยนชื่อกลุ่มตามภาษาที่กำหนด
โดย Ittichai_chupol อ 24 ธ.ค. 2019 6:35 pm บอร์ด PHP Knowledge
0
29
อ 24 ธ.ค. 2019 6:35 pm โดย Ittichai_chupol
R - ขั้นตอนการตรวจ สอบปัญหา ที่อาจจะเกิดขึ้น ตาม Systems Diagram
โดย mindphp อ 24 ธ.ค. 2019 12:12 pm บอร์ด MlineCRM Line + MD-CRM
0
2
อ 24 ธ.ค. 2019 12:12 pm โดย mindphp
ปฏิทินประจําปี 2563 มาในรูปแบบไซเบอร์ สำหรับคนสมัยใหม่ที่มีหัวคิดก้าวไกลเท่าทันเทคโนโลยี
โดย noppadonsk อ 24 ธ.ค. 2019 10:35 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
155
ส 04 ม.ค. 2020 4:38 am โดย mindphp
R - เพิ่ม Exception ตอน push ข้อมความ ไปที่ Line หรือ รับข้อความจาก Line ไม่ได้
โดย mindphp อ 24 ธ.ค. 2019 7:06 am บอร์ด MD-CRM - Tester
0
4
อ 24 ธ.ค. 2019 7:06 am โดย mindphp
B - เวลาใน Logs ไม่ตรง
โดย mindphp อ 24 ธ.ค. 2019 5:57 am บอร์ด MlineCRM Line + MD-CRM
0
3
อ 24 ธ.ค. 2019 5:57 am โดย mindphp