- 经验值 338
| - F豆 51521 个
| - F币 36 元
- 贡献 0
| - 最后登录 2023-12-20
我是社区第57位番薯,欢迎点我头像关注我哦~
在技术区问了半天,没一个让想学习的伙伴们好好学习到,在此整理超详细资料,学习了,大家就都成高手了。
1、用pl连接oracle,输入账号/密码/实例名,登录,这一步不懂的请回帖。并注明哪个步骤不懂。
2、创建触发器
由于oracle 不像mssql能设置id自增量。因此需要自己额外设置。
举例:超详细
例如:
1、建用户数据表dectuser的sql如下:拷贝到pl
create table dectuser(
userid number primary key, /*主键,自动增加*/
name varchar2(20),
sex varchar2(2)
);
点击执行
2、创建自动增长序列的sql如下:拷贝到pl
create sequence dectuser_tb_seq minvalue 1 maxvalue 99999999
increment by 1 --增量为1
nocache --不建缓冲区
nocycle -- 一直累加不重复
start with 1; /*步长为1*/
点击执行
3、创建触发器
create or replace trigger dectuser_tb_tri
before insert on dectuser /*触发条件:当向表dectuser执行插入操作时触发此触发器*/
for each row /*对每一行都检测是否触发*/
begin /*触发器开始*/
select dectuser_tb_seq.nextval into :new.userid from dual;
/*触发器主题内容,即触发后执行的动作,在此是取得序列dectuser_tb_seq的下一个值插入到表dectuser中的userid字段中*/
end;
点击执行并提交
4、测试
输入sql语句:
insert into dectuser(name,sex) values ('wang','女');
提示“已创建一行”,表示成功。呵呵:D
|
|