oracle 序列的概念与使用步骤
轉載自:http://www.worlduc.com/blog2012.aspx?bid=20342458
一、概念
1、??序列:?是oacle提供的用于產生一系列唯一數字的數據庫對象。主要用于提供主鍵值。
2、??創建序列:
?創建序列的語法
?CREATE SEQUENCE?sequence??//創建序列名稱
?????? [INCREMENT BY?n]? //遞增的序列值是n?如果n是正數就遞增,如果是負數就遞減?默認是
????????[START WITH?n]??? //開始的值,遞增默認是minvalue?遞減是maxvalue
??????????[{MAXVALUE?n?|?NOMAXVALUE}] //最大值
???????????[{MINVALUE?n?|?NOMINVALUE}] //最小值
???????????[{CYCLE |?NOCYCLE}] //循環/不循環
???????????[{CACHE?n?| NOCACHE}];//分配并存入到內存中
其中:
?Create?創建??Sequence?序列?seqEmop?序列名稱
Increment by?步長
Stat with 1?開始值
Maxvalue??最大值
Minvalue??最小值
??NEXTVAL?返回序列中下一個有效的值,任何用戶都可以引用
??CURRVAL?中存放序列的當前值
??NEXTVAL?應在?CURRVAL?之前指定?,二者應同時有效
3、???例子
Create sequence seqEmp increment by 1 start with 1
4、??訪問
Select seqEmp.nextval ?from dual;?
Select seqEmp.currval ?from dual;
5、??刪除序列
使用DROP SEQUENCE?語句刪除序列
刪除之后,序列不能再次被引用
二、使用步驟
----------------------------數據庫設計中--------------------------------------------------
為每個需要自動增長列的表建立一個序列
例如:
--表student
create table student
(??
???id integer primary key,
???stuName varchar2(10),
???stupwd varchar2(10)
);
--序列?seq_student
create sequence seq_student
increment by 1
start with 1;
-----------------------------------------------------------------------------------------
--表?course
create table course
(??
???id integer primary key,
???cNo??varchar2(10),
???cName varchar2(10)?
);
--序列?seq_course
create sequence seq_course
increment by 1
start with 1;
-----------------------------------?在后臺代碼中為student表插入數據------------------------------
1、??頁面(學生注冊??stuReg.jsp)
| 用戶名: |
| |
| 密碼: |
| |
| 提交 | 取消 |
2、??后臺代碼
//連接數據庫
//………..此處省略好多字
String s1 =?從用戶框中獲取輸入的內容(“Tom”)
String s2 =?從密碼框中獲取輸入的內容(“123”)
// stmt.execute(“insert into student values(seq_student.nextval?, s1 , s2 )”);
-----------------------------------?在后臺代碼中為course表插入數據------------------------------
1、頁面(課程錄入??course.jsp)
| 課程編號: |
| |
| 課程名稱: |
| |
| 提交 | 取消 |
2、后臺代碼
//連接數據庫
//………..此處省略好多字
?String c1 =?從課程編號框中獲取輸入的內容(“001”)
????String c2 =?從課程名稱框中獲取輸入的內容(“Oracle數據庫”)
// stmt.execute(“insert into course values(seq_course.nextval?, c1 , c2 )”);
總結
以上是生活随笔為你收集整理的oracle 序列的概念与使用步骤的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android 如何让EditText不
- 下一篇: Cookie的设置获取和删除