@@ -5,65 +5,62 @@ sidebar_position: 1
55
66import FunctionDescription from '@site/src /components/FunctionDescription';
77
8- <FunctionDescription description =" ๅผๅ
ฅๆๆดๆฐไบ๏ผv1.2.784 " />
8+ <FunctionDescription description =" ๅผๅ
ฅๆๆดๆฐไบ๏ผv1.2.807 " />
99
1010ๅจ Databend ไธญๅๅปบไธไธชๆฐ็ๅบๅ๏ผSequence๏ผใ
1111
12- ๅบๅ๏ผSequence๏ผๆฏไธ็ง็จไบ่ชๅจ็ๆๅฏไธๆฐๅญๆ ่ฏ็ฌฆ็ๅฏน่ฑก๏ผๅธธ็จไบไธบ่กจไธญ็่กๅ้
ๅฏไธๆ ่ฏ็ฌฆ๏ผไพๅฆ็จๆท ID ๅใ้ๅธธ๏ผๅบๅไปๆๅฎๅผๅผๅง๏ผๅนถๆๆๅฎ้้ๅขใ
13-
14- ::: note
15- Databend ไธญ็ๅบๅ็ฎๅไป 1 ๅผๅง๏ผๅนถไปฅ 1 ไธบๆญฅ้ฟ้ๅขใ่ฝ็ถๅบๅไฟ่ฏๅผ็ๅฏไธๆง๏ผไฝ** ไธ** ไฟ่ฏๅ
ถ่ฟ็ปญๆง๏ผๅณๆฒกๆ้ด้๏ผใ
16- :::
12+ ๅบๅ๏ผSequence๏ผๆฏไธ็ง่ชๅจ็ๆๅฏไธๆฐๅญๆ ่ฏ็ฌฆ็ๅฏน่ฑก๏ผ้ๅธธ็จไบไธบ่กจ่กๅ้
ไธๅ็ๅผ๏ผไพๅฆ็จๆท ID๏ผใ่ฝ็ถๅบๅไฟ่ฏๅผ็ๅฏไธๆง๏ผไฝ** ไธ** ไฟ่ฏ่ฟ็ปญๆง๏ผๅณๅฏ่ฝๅบ็ฐ้ด้๏ผใ
1713
1814## ่ฏญๆณ
1915
2016``` sql
21- CREATE [ OR REPLACE ] SEQUENCE [IF NOT EXISTS] < sequence>
17+ CREATE [ OR REPLACE ] SEQUENCE [ IF NOT EXISTS ] < sequence>
18+ [ START [ = ] < start_value> ]
19+ [ INCREMENT [ = ] < increment_value> ]
2220```
2321
24- | ๅๆฐ | ่ฏดๆ |
25- | --------------| -----------------------------------------|
26- | ` <sequence> ` | ่ฆๅๅปบ็ๅบๅ็ๅ็งฐใ |
22+ | ๅๆฐ | ๆ่ฟฐ | ้ป่ฎคๅผ |
23+ | ----------------| ------------------------------------------------| --------|
24+ | ` <sequence> ` | ่ฆๅๅปบ็ๅบๅๅ็งฐใ | - |
25+ | ` START ` | ๅบๅ็ๅๅงๅผใ | 1 |
26+ | ` INCREMENT ` | ๆฏๆฌก่ฐ็จ NEXTVAL ๆถ็ๅข้ๅผใ | 1 |
2727
2828## ่ฎฟ้ฎๆงๅถ่ฆๆฑ
2929
30- | ๆ้ | ๅฏน่ฑก็ฑปๅ | ่ฏดๆ |
31- | :----------------| :------------| :----------------------|
32- | CREATE SEQUENCE | ๅ
จๅฑ | ๅๅปบไธไธชๅบๅใ |
33-
30+ | ๆ้ | ๅฏน่ฑก็ฑปๅ | ๆ่ฟฐ |
31+ | :----------------| :---------| :---------------|
32+ | CREATE SEQUENCE | ๅ
จๅฑ | ๅๅปบๅบๅใ |
3433
35- ่ฆๅๅปบไธไธชๅบๅ ๏ผๆง่กๆไฝ็็จๆทๆ [ current_role] ( /guides/security/access-control/roles ) ๅฟ
้กปๆฅๆ CREATE SEQUENCE [ ๆ้] ( /guides/security/access-control/privileges ) ใ
34+ ่ฆๅๅปบๅบๅ ๏ผๆง่กๆไฝ็็จๆทๆ [ current_role] ( /guides/security/access-control/roles ) ๅฟ
้กปๆฅๆ CREATE SEQUENCE [ ๆ้] ( /guides/security/access-control/privileges ) ใ
3635
3736::: note
3837
39- ` enable_experimental_sequence_rbac_check ` ่ฎพ็ฝฎ็จไบๆงๅถๅบๅ็บงๅซ็่ฎฟ้ฎๆงๅถใ้ป่ฎคๆ
ๅตไธ๏ผๆญคๅ่ฝๆฏ็ฆ็จ็ใ
40- ๅๅปบๅบๅไป
่ฆๆฑ็จๆทๆฅๆ่ถ
็บง็จๆทๆ้๏ผไป่็ป่ฟ่ฏฆ็ป็ RBAC ๆฃๆฅใ
41- ๅฏ็จๅ๏ผๅจๅๅปบๅบๅๆถๅฐๅผบๅถๆง่ก็ฒพ็ป็ๆ้้ช่ฏใ
38+ ` enable_experimental_sequence_rbac_check ` ่ฎพ็ฝฎๆงๅถๅบๅ็บงๅซ็่ฎฟ้ฎๆงๅถ๏ผ้ป่ฎค็ฆ็จใ
39+ ๆญคๆถๅๅปบๅบๅไป
้็จๆทๆฅๆ่ถ
็บง็จๆทๆ้๏ผ็ป่ฟ่ฏฆ็ป็ RBAC ๆฃๆฅใ
40+ ๅฏ็จๅ๏ผๅฐๅจๅๅปบๅบๅๆถๆง่ก็ป็ฒๅบฆๆ้้ช่ฏใ
4241
43- ่ฟๆฏไธไธชๅฎ้ชๆงๅ่ฝ๏ผๆชๆฅๅฏ่ฝไผ้ป่ฎคๅฏ็จ ใ
42+ ่ฏฅๅ่ฝไธบๅฎ้ชๆง่ดจ๏ผๆชๆฅๅฏ่ฝ้ป่ฎคๅผๅฏ ใ
4443
4544:::
4645
4746## ็คบไพ
4847
49- ๆญค็คบไพๅฑ็คบไบๅฆไฝไฝฟ็จๅบๅๅ [ NEXTVAL] ( /sql/sql-functions/sequence-functions/nextval ) ๅฝๆฐไธบ่กจไธญ็่ก่ชๅจ็ๆๅนถๅ้
ๅฏไธๆ ่ฏ็ฌฆใ
48+ ### ๅบๆฌๅบๅ
49+
50+ ไฝฟ็จ้ป่ฎค่ฎพ็ฝฎๅๅปบๅบๅ๏ผไป 1 ๅผๅง๏ผๆญฅ้ฟไธบ 1๏ผ๏ผ
5051
5152``` sql
52- -- ๅๅปบไธไธชๅไธบ staff_id_seq ็ๆฐๅบๅ
5353CREATE SEQUENCE staff_id_seq ;
5454
55- -- ๅๅปบไธไธชๅไธบ staff ็ๆฐ่กจ๏ผๅ
ๅซ staff_idใname ๅ department ๅ
5655CREATE TABLE staff (
5756 staff_id INT ,
5857 name VARCHAR (50 ),
5958 department VARCHAR (50 )
6059);
6160
62- -- ๅ staff ่กจไธญๆๅ
ฅๆฐ่ก๏ผไฝฟ็จ staff_id_seq ๅบๅ็ไธไธไธชๅผไธบ staff_id ๅ่ตๅผ
6361INSERT INTO staff (staff_id, name, department)
6462VALUES (NEXTVAL(staff_id_seq), ' John Doe' , ' HR' );
6563
66- -- ๅ staff ่กจไธญๆๅ
ฅๅฆไธ่ก๏ผไฝฟ็จ staff_id_seq ๅบๅ็ไธไธไธชๅผไธบ staff_id ๅ่ตๅผ
6764INSERT INTO staff (staff_id, name, department)
6865VALUES (NEXTVAL(staff_id_seq), ' Jane Smith' , ' Finance' );
6966
@@ -75,4 +72,32 @@ SELECT * FROM staff;
7572โ 2 โ Jane Smith โ Finance โ
7673โ 1 โ John Doe โ HR โ
7774โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
75+ ```
76+
77+ ### ่ชๅฎไน่ตทๅงๅผไธๆญฅ้ฟ
78+
79+ ๅๅปบไป 1000 ๅผๅงใๆญฅ้ฟไธบ 10 ็ๅบๅ๏ผ
80+
81+ ``` sql
82+ CREATE SEQUENCE order_id_seq START = 1000 INCREMENT = 10 ;
83+
84+ CREATE TABLE orders (
85+ order_id BIGINT ,
86+ order_name VARCHAR (100 )
87+ );
88+
89+ INSERT INTO orders (order_id, order_name)
90+ VALUES (NEXTVAL(order_id_seq), ' Order A' );
91+
92+ INSERT INTO orders (order_id, order_name)
93+ VALUES (NEXTVAL(order_id_seq), ' Order B' );
94+
95+ SELECT * FROM orders;
96+
97+ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
98+ โ order_id โ order_name โ
99+ โโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโค
100+ โ 1000 โ Order A โ
101+ โ 1010 โ Order B โ
102+ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
78103```
0 commit comments