Oracle创建主键自增表(sql语句实现)及触发器应用
程序员文章站
2023-12-02 08:18:16
1、创建表 复制代码 代码如下: createtabletest_increase( useridnumber(10)notnullprimarykey,/*主键,自动增加...
1、创建表
createtabletest_increase(
useridnumber(10)notnullprimarykey,/*主键,自动增加*/
usernamevarchar2(20)
);
2、创建自动增长序列
createsequencetestincrease_sequence
incrementby1--每次加几个
startwith1--从1开始计数
nomaxvalue--不设置最大值,设置最大值:maxvalue9999
nocycle--一直累加,不循环
cache10;
3、创建触发器
createtriggertest_increasebefore
insertontest_increaseforeachrow/*对每一行都检测是否触发*/
begin
selecttestincrease_sequence.nextvalinto:new.useridfromdual;
end;
//*退出sqlplus行编辑*/
4、提交
commit;
5、测试
insertinto
test_increase(username)values('test');
复制代码 代码如下:
createtabletest_increase(
useridnumber(10)notnullprimarykey,/*主键,自动增加*/
usernamevarchar2(20)
);
2、创建自动增长序列
复制代码 代码如下:
createsequencetestincrease_sequence
incrementby1--每次加几个
startwith1--从1开始计数
nomaxvalue--不设置最大值,设置最大值:maxvalue9999
nocycle--一直累加,不循环
cache10;
3、创建触发器
复制代码 代码如下:
createtriggertest_increasebefore
insertontest_increaseforeachrow/*对每一行都检测是否触发*/
begin
selecttestincrease_sequence.nextvalinto:new.useridfromdual;
end;
//*退出sqlplus行编辑*/
4、提交
复制代码 代码如下:
commit;
5、测试
insertinto
复制代码 代码如下:
test_increase(username)values('test');