การสร้างลำดับเป็นส่วนสำคัญของ Oracle SQL ลำดับคือออบเจ็กต์ฐานข้อมูลที่ผู้ใช้หลายคนอาจสร้างจำนวนเต็มที่ไม่ซ้ำกัน คุณสามารถกำหนดลักษณะบางอย่างได้ เช่น ค่าแรกที่จะเริ่มต้นด้วย ขนาดที่เพิ่มขึ้น และขีดจำกัดสูงสุด และอื่นๆ หมายเลขที่สร้างโดยลำดับสามารถใช้เพื่อวัตถุประสงค์หลายประการ เช่น การสร้างตัวระบุเฉพาะ คีย์หลัก หมายเลขควบคุม และอื่นๆ อีกมากมาย
ลำดับใน Oracle SQL คืออะไร
ลำดับ (Sequence) ในOracle SQLเป็นอ็อบเจ็กต์ในฐานข้อมูลที่ช่วยให้คุณสร้างค่าจำนวนเต็มที่ไม่ซ้ำกันได้ สิ่งนี้มีประโยชน์อย่างมากเมื่อคุณต้องการสร้างค่าคีย์หลักที่ไม่ซ้ำกัน หรือค่าที่ไม่ซ้ำกันใดๆ ในฐานข้อมูล มันมีประสิทธิภาพและสะดวกสบายเนื่องจากช่วยป้องกันปัญหาการทำงานพร้อมกัน ลดปริมาณการรับส่งข้อมูลเครือข่าย และหลีกเลี่ยงค่าใช้จ่ายในการบำรุงรักษาแนวทางการกำหนดค่าแบบอิงธุรกรรม
สร้างลำดับ seq_name
เริ่มต้นด้วย initial_value
INCREMENT BY Increment_value
MAXVALUE สูงสุด_ค่า
การสร้างลำดับ
หากต้องการสร้างลำดับใน Oracle คุณสามารถใช้คำสั่ง CREATE SEQUENCE ตัวสร้างลำดับเริ่มต้นด้วยค่าเริ่มต้น เพิ่มขึ้นตามค่าที่ระบุ และจะไม่เกินค่าสูงสุด หากไม่มีการกำหนดพารามิเตอร์ ระบบจะใช้ค่าเริ่มต้น ลำดับสามารถเพิ่มหรือลดได้ ขึ้นอยู่กับความชอบของคุณ
สร้างลำดับ test_seq
เริ่มต้นด้วย 1
เพิ่มขึ้น 1
แม็กซ์แวลู 10000
รหัสข้างต้นจะสร้างลำดับชื่อ 'test_seq' ลำดับจะเริ่มต้นที่ 1 เพิ่มขึ้น 1 สำหรับแต่ละค่าถัดไป และจะไม่เกินค่าสูงสุด 10000
การใช้ลำดับที่สร้างขึ้น
หากต้องการใช้ลำดับที่สร้างขึ้น คุณจะต้องเรียกใช้ฟังก์ชัน NEXTVAL บนออบเจ็กต์ลำดับซึ่งจะเพิ่มลำดับและส่งกลับค่าใหม่ ฟังก์ชัน CURRVAL สามารถใช้เพื่อดึงค่าปัจจุบันของลำดับโดยไม่ต้องเพิ่มค่า อย่างไรก็ตาม ไม่สามารถอ้างอิง CURRVAL ได้ก่อนที่จะเรียก NEXTVAL ในเซสชัน
แทรกลงในค่า test_table (id, ข้อมูล) (test_seq.NEXTVAL, 'ข้อมูลบางส่วน');
การแก้ไขและการลบลำดับ
ลำดับที่มีอยู่สามารถแก้ไขได้โดยใช้คำสั่ง ALTER SEQUENCE โดยที่สามารถเปลี่ยนพารามิเตอร์ เช่น INCREMENT, MAXVALUE, MINVALUE เป็นต้น หากจำเป็นต้องลบลำดับออก จะใช้คำสั่ง DROP SEQUENCE
แก้ไขลำดับ:
แก้ไขลำดับ test_seq
เพิ่มขึ้น 2
แม็กซ์แวลู 50000
ลำดับการดรอป:
วางลำดับ test_seq
โดยสรุปแล้ว ลำดับ (sequences) ในOracle SQLเป็นเครื่องมือที่มีประสิทธิภาพสำหรับการสร้างหมายเลขเฉพาะ คีย์หลัก และค่าอื่นๆ ในสภาพแวดล้อมที่มีผู้ใช้หลายคน ใช้งานง่าย ปรับแต่งได้ และมีประสิทธิภาพเนื่องจากมีลักษณะเป็นแบบสแตนด์อโลน ไม่จำเป็นต้องมีการควบคุมธุรกรรมใดๆ
