PostgreSQL INSERT: การแทรกข้อมูลลงในตาราง

PostgreSQL คำสั่ง INSERT

In PostgreSQLคำสั่งแทรกจะช่วยแทรกแถวหรือแถวใหม่ลงในตาราง คุณสามารถแทรกแถวที่ระบุด้วยนิพจน์ค่า ศูนย์ หรือหลายแถวที่เป็นผลจากการสืบค้น

ไวยากรณ์ของ PostgreSQL ใส่ลงใน

INSERT INTO TABLE_NAME (column1, column2, ...columnN)
VALUES (value1, value2,...valueN);

คุณสามารถดูได้ในไวยากรณ์ด้านบน คอลัมน์ 1 ถึง N คือชื่อของคอลัมน์ในตารางที่คุณต้องการแทรกข้อมูลลงไป คอลัมน์เป้าหมายต้องแสดงรายการตามลำดับที่เฉพาะเจาะจง ค่าที่ระบุโดยแบบสอบถามหรือส่วนคำสั่งค่าอาจเป็นค่าที่สอดคล้องกันสำหรับคอลัมน์

เมื่อดำเนินการแบบสอบถามแล้ว คุณจะเห็นข้อความเอาต์พุต

Insert oid 1

ข้อความเอาต์พุตนี้จะปรากฏขึ้นหากมีการแทรกเพียงแถวเดียว โดยที่ oid คือ OID ตัวเลขที่กำหนดให้กับแถวที่แทรก

ตัวอย่างของการ PostgreSQL แทรกลงในตาราง

พิจารณาตาราง "บทช่วยสอน" ต่อไปนี้ที่มีสองคอลัมน์

“id” จำนวนเต็มค่าเริ่มต้น 1
“tutorial_name” ข้อความค่าเริ่มต้น postgre
และไม่มีข้อจำกัด

PostgreSQL แทรกลงในตาราง

นี่คือขั้นตอนสำหรับ PostgreSQL แทรกลงในตาราง:

ขั้นตอน 1) การแทรกแถวเข้าไป

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');

PostgreSQL แทรกลงในตาราง

หมายเหตุ: เฉพาะอักขระหรือค่าวันที่เท่านั้นที่ต้องอยู่ในเครื่องหมายคำพูดเดี่ยวเมื่อแทรกแถว

ขั้นตอน 2) อย่างไรก็ตาม หากคุณแทรกข้อมูลลงในคอลัมน์ทั้งหมด คุณสามารถละชื่อคอลัมน์ได้ คำสั่งแทรกเดียวกันยังสามารถเขียนเป็น

INSERT INTO tutorials VALUES (1, 'postgre');

PostgreSQL แทรกลงในตาราง

ขั้นตอน 3) ค่าข้อมูลจะแสดงตามลำดับตามคอลัมน์ที่ปรากฏในตาราง คั่นด้วยเครื่องหมายจุลภาค

ไวยากรณ์ข้างต้นมีปัญหาซึ่งคุณจำเป็นต้องทราบลำดับของคอลัมน์ในตาราง เพื่อแก้ไขปัญหานี้ คุณยังสามารถแสดงรายการคอลัมน์ได้อย่างชัดเจน

ตัวอย่างเช่น คำสั่งทั้งสองที่ระบุไว้ด้านล่างมีผลเหมือนกันดังที่แสดงด้านล่าง:

INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);

PostgreSQL แทรกลงในตาราง

ขั้นตอน 4) ในตัวอย่างนี้ คุณจะเห็นว่าถ้าคุณไม่มีค่าสำหรับคอลัมน์ทั้งหมด คุณสามารถละเว้นบางคอลัมน์ได้

ในกรณีดังกล่าว คอลัมน์ต่างๆ จะถูกเติมด้วยค่าเริ่มต้นโดยอัตโนมัติ หากมีการระบุ

INSERT INTO tutorials(id) VALUES (5);

PostgreSQL แทรกลงในตาราง

ขั้นตอน 5) คุณยังสามารถขอค่าเริ่มต้นสำหรับแต่ละคอลัมน์หรือทั้งแถวได้:

INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT);
INSERT INTO tutorials DEFAULT VALUES;

PostgreSQL แทรกลงในตาราง

ขั้นตอน 6) คุณสามารถหลายแถวได้ด้วยคำสั่งเดียว:

INSERT INTO tutorials(id, tutorial_name) VALUES
(1, 'postgre'),
(2, 'oracle'),
(3, 'mysql'),
(4, 'mongo');

PostgreSQL แทรกลงในตาราง

ขั้นตอน 7) In PostgreSQLนอกจากนี้ยังเป็นการแทรกผลลัพธ์ของการสืบค้นซึ่งอาจไม่มีแถว แถวเดียว หรือหลายแถว:

INSERT INTO tutorials (id, tutorial_name)
SELECT id, tutorial_name FROM tutorials
WHERE tutorial_name = 'mysql';

PostgreSQL แทรกลงในตาราง

PostgreSQL แทรกคำสั่งโดยใช้ pgAdmin

ต่อไปนี้เป็นขั้นตอนในการแทรกคำสั่งโดยใช้ pgAdmin ใน Postgre SQL

ขั้นตอน 1) ในแผนผังวัตถุ

  1. คลิกขวาที่ตารางที่คุณต้องการแทรกข้อมูล
  2. เลือกสคริปต์
  3. แทรกสคริปต์

PostgreSQL แทรกคำสั่งโดยใช้ pgAdmin

ขั้นตอน 2) ในแผงแทรก

  1. แก้ไขแบบสอบถาม
  2. คลิกปุ่มไฟ
  3. สังเกตผลลัพธ์

PostgreSQL แทรกคำสั่งโดยใช้ pgAdmin

ขั้นตอน 3) คุณยังสามารถไปที่เครื่องมือ > เครื่องมือสืบค้นข้อมูล เพื่อเปิดตัวแก้ไขแบบสอบถามได้ แต่คุณจะไม่ได้รับข้อความค้นหาแบบแทรกเริ่มต้น

PostgreSQL แทรกคำสั่งโดยใช้ pgAdmin

สรุป

รหัส/พารามิเตอร์/คำแนะนำ Descriptไอออน
แทรกลงใน TABLE_NAME (คอลัมน์1, คอลัมน์2, …คอลัมน์N)
ค่า (value1, value2,...valueN);
ใช้ในการแทรกค่าลงในตาราง
แทรกลงในบทช่วยสอน (id, Tutorial_name) ค่า (1, 'postgre');
แทรกลงในบทช่วยสอน (tutorial_name, id) ค่า ('postgre',1);
ลำดับของคอลัมน์ไม่สำคัญ ทั้งสองจะมีผลเช่นเดียวกัน
แทรกค่าบทเรียน (1, 'postgre'); หากคุณระบุค่าให้กับทุกคอลัมน์ ไม่จำเป็นต้องระบุ
แทรกลงในบทช่วยสอน (id, tutorial_name)
เลือก id, Tutorial_name จากบทช่วยสอน
WHERE tutorial_name = 'mysql';
คุณสามารถระบุแบบสอบถามย่อยเดียวหรือหลายรายการที่อ้างอิงตามชื่อในการสืบค้น INSERT
ค่าเริ่มต้น การใช้ส่วนคำสั่งนี้เพื่อเติมคอลัมน์ทั้งหมดด้วยค่าเริ่มต้น
การแสดงออก ค่าและนิพจน์ที่ควรกำหนดให้กับคอลัมน์ที่เกี่ยวข้อง
omedefault ส่วนคำสั่งเริ่มต้นจะใช้เมื่อคอลัมน์ที่เกี่ยวข้องเต็มไปด้วยค่าเริ่มต้น