SAP บทช่วยสอน HANA: สร้างลำดับ

ลำดับคืออะไร?

ลำดับคือออบเจ็กต์ฐานข้อมูลที่สร้างรายการค่าตัวเลขที่เพิ่มขึ้นโดยอัตโนมัติตามกฎที่ระบุในข้อกำหนดเฉพาะของลำดับ

ตัวอย่างเช่น ในการแทรกหมายเลขพนักงานโดยอัตโนมัติในคอลัมน์ (EMPLOYEE_NO) ของตาราง เมื่อมีการแทรกบันทึกใหม่ในตาราง เราจะใช้ลำดับ

ค่าลำดับจะถูกสร้างขึ้นตามลำดับจากน้อยไปหามากหรือจากมากไปหาน้อย

ลำดับไม่เกี่ยวข้องกับตาราง แอปพลิเคชันเหล่านั้นถูกใช้ มีสองค่าตามลำดับ -

  • CURRVAL – ระบุค่าปัจจุบันของลำดับ
  • NEXTVAL – ระบุค่าถัดไปของลำดับ

ซิงค์

CREATE SEQUENCE <sequence_name> [<sequence_parameter_list>] [RESET BY <subquery>]

องค์ประกอบไวยากรณ์

ELEMENTS DESCRIPTION
มันคือชื่อของลำดับ
- - โดยจะระบุพารามิเตอร์ลำดับตั้งแต่หนึ่งรายการขึ้นไป
เริ่มกับ มันอธิบายค่าลำดับเริ่มต้น
เพิ่มขึ้นโดย นี่เป็นการระบุค่าที่จะเพิ่มจากค่าสุดท้ายที่กำหนดในแต่ละครั้งเมื่อสร้างค่าลำดับใหม่ ค่าเริ่มต้นคือ 1
MAXVALUE นี่เป็นการระบุค่าสูงสุด ซึ่งสามารถสร้างได้ตามลำดับ สามารถอยู่ระหว่าง -4611686018427387903 ถึง 4611686018427387902
ไม่มีค่าสูงสุด เมื่อระบุ NO MAXVALUE สำหรับลำดับจากน้อยไปมาก ค่าสูงสุดจะเป็น 4611686018427387903 และค่าต่ำสุดสำหรับลำดับจากมากไปน้อยจะเป็น -1
มินแวล / ไม่มีมูลค่าขั้นต่ำ โดยระบุค่าต่ำสุดที่ลำดับสามารถสร้างได้ สามารถอยู่ระหว่าง -4611686018427387904 ถึง 4611686018427387902 เมื่อใช้ NO MINVALUE ค่าต่ำสุดสำหรับลำดับจากน้อยไปหามากคือ 1
รอบ คำสั่ง CYCLE ระบุว่าหมายเลขลำดับจะเริ่มต้นใหม่หลังจากที่ถึงค่าสูงสุดหรือต่ำสุด
ไม่มีวงจร ตัวเลือกเริ่มต้น คำสั่ง NO CYCLE ระบุว่าหมายเลขลำดับจะไม่ถูกรีสตาร์ทหลังจากถึงค่าสูงสุดหรือต่ำสุด
แคช - ขนาดแคชระบุช่วงของหมายเลขลำดับที่จะถูกแคชไว้ในโหนด จะต้องเป็นจำนวนเต็มไม่มีเครื่องหมาย
ไม่มีแคช ตัวเลือกเริ่มต้น คำสั่ง NO CACHE ระบุว่าหมายเลขลำดับจะไม่ถูกแคชในโหนด
รีเซ็ตโดย โดยระบุว่าในระหว่างการรีสตาร์ทฐานข้อมูล ฐานข้อมูลจะดำเนินการโดยอัตโนมัติ และค่าลำดับจะรีสตาร์ทด้วยค่าที่ส่งคืน

ตัวอย่าง -

เราจะสร้างลำดับที่มีชื่อว่า DHK_SCHEMA.EMP_NO ซึ่งจะสร้างค่าที่เพิ่มขึ้นของลำดับ +1 ในแต่ละครั้งเมื่อมีการใช้ลำดับ

สคริปต์ลำดับ –

CREATE SEQUENCE DHK_SCHEMA.EMP_NO START WITH 100 INCREMENT BY 1.

ที่นี่เราจะใช้วัตถุ "ลำดับ" ในตัวอย่างด้านล่างเพื่อเพิ่มมูลค่าของพนักงานไม่ +1 แต่ละครั้งที่มีการดำเนินการแบบสอบถามแบบใช้เลือกข้อมูล ในแบบสอบถาม สามารถใช้ "nextval" สำหรับการสร้างหมายเลขซีเรียลหรือข้อกำหนดประเภทเดียวกันได้

การใช้ลำดับ –

SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;

OUTPUT – 100,101,102………ดังนั้นในการดำเนินการทุกครั้งของแบบสอบถามแบบเลือกด้านบน