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 แทรกลงในตาราง:
ขั้นตอน 1) การแทรกแถวเข้าไป
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre');
หมายเหตุ: เฉพาะอักขระหรือค่าวันที่เท่านั้นที่ต้องอยู่ในเครื่องหมายคำพูดเดี่ยวเมื่อแทรกแถว
ขั้นตอน 2) อย่างไรก็ตาม หากคุณแทรกข้อมูลลงในคอลัมน์ทั้งหมด คุณสามารถละชื่อคอลัมน์ได้ คำสั่งแทรกเดียวกันยังสามารถเขียนเป็น
INSERT INTO tutorials VALUES (1, 'postgre');
ขั้นตอน 3) ค่าข้อมูลจะแสดงตามลำดับตามคอลัมน์ที่ปรากฏในตาราง คั่นด้วยเครื่องหมายจุลภาค
ไวยากรณ์ข้างต้นมีปัญหาซึ่งคุณจำเป็นต้องทราบลำดับของคอลัมน์ในตาราง เพื่อแก้ไขปัญหานี้ คุณยังสามารถแสดงรายการคอลัมน์ได้อย่างชัดเจน
ตัวอย่างเช่น คำสั่งทั้งสองที่ระบุไว้ด้านล่างมีผลเหมือนกันดังที่แสดงด้านล่าง:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'); INSERT INTO tutorials(tutorial_name, id) VALUES ('postgre',1);
ขั้นตอน 4) ในตัวอย่างนี้ คุณจะเห็นว่าถ้าคุณไม่มีค่าสำหรับคอลัมน์ทั้งหมด คุณสามารถละเว้นบางคอลัมน์ได้
ในกรณีดังกล่าว คอลัมน์ต่างๆ จะถูกเติมด้วยค่าเริ่มต้นโดยอัตโนมัติ หากมีการระบุ
INSERT INTO tutorials(id) VALUES (5);
ขั้นตอน 5) คุณยังสามารถขอค่าเริ่มต้นสำหรับแต่ละคอลัมน์หรือทั้งแถวได้:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, DEFAULT); INSERT INTO tutorials DEFAULT VALUES;
ขั้นตอน 6) คุณสามารถหลายแถวได้ด้วยคำสั่งเดียว:
INSERT INTO tutorials(id, tutorial_name) VALUES (1, 'postgre'), (2, 'oracle'), (3, 'mysql'), (4, 'mongo');
ขั้นตอน 7) In PostgreSQLนอกจากนี้ยังเป็นการแทรกผลลัพธ์ของการสืบค้นซึ่งอาจไม่มีแถว แถวเดียว หรือหลายแถว:
INSERT INTO tutorials (id, tutorial_name) SELECT id, tutorial_name FROM tutorials WHERE tutorial_name = 'mysql';
PostgreSQL แทรกคำสั่งโดยใช้ pgAdmin
ต่อไปนี้เป็นขั้นตอนในการแทรกคำสั่งโดยใช้ pgAdmin ใน Postgre SQL
ขั้นตอน 1) ในแผนผังวัตถุ
- คลิกขวาที่ตารางที่คุณต้องการแทรกข้อมูล
- เลือกสคริปต์
- แทรกสคริปต์
ขั้นตอน 2) ในแผงแทรก
- แก้ไขแบบสอบถาม
- คลิกปุ่มไฟ
- สังเกตผลลัพธ์
ขั้นตอน 3) คุณยังสามารถไปที่เครื่องมือ > เครื่องมือสืบค้นข้อมูล เพื่อเปิดตัวแก้ไขแบบสอบถามได้ แต่คุณจะไม่ได้รับข้อความค้นหาแบบแทรกเริ่มต้น
สรุป
รหัส/พารามิเตอร์/คำแนะนำ | 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 | ส่วนคำสั่งเริ่มต้นจะใช้เมื่อคอลัมน์ที่เกี่ยวข้องเต็มไปด้วยค่าเริ่มต้น |