1.1.安装以及常见问题
oracle安装教程
安装中 system密码改成root
oracle卸载,除此之外清除C:\Program Files内的oracle
需要准备oracle安装包和plsql界面化操作工具
重装报错bug:
plsql操作
plsql注册码
product code: ke4tv8t5jtxz493kl8s2nn3t6xgngcmgf3
serial Number: 264452
password: xs374ca
1.2创建用户
先用system角色登录进去,密码是安装时设置的口令root。用户可直接登录到system用户以创建其他用户,因为system用户具有创建别 的用户的 权限。
oracle创建角色
打开sql命令行输入
//数据库位置
create tablespace znjs datafile 'D:\dayt_py_data\oracle' size 300m
autoextend on next 20M maxsize unlimited;
//创建用户dgyt 和绑定数据库
create user dgyt identified by dgyt
default tablespace znjs
temporary tablespace temp
account unlock;
//赋予权限给用户dgyt
grant connect, resource,create view,create database link to dgyt ;
测试:idea连接 ,测试loaclhost能否来连接,再看外网。
1.3 pde形式导入
针对权限表、角色表、角色-权限表、用户表、用户-角色表设置触发器。
在插入语句之前先处理好id自增的问题,然后就可以不用管Id了,让他自增
先设置触发器自增id,再插入
触发器自增id
触发器语法
2.1权限表自增主键,分开执行
drop SEQUENCE IDA_PERMISSIONt;
CREATE SEQUENCE IDA_PERMISSIONt
increment by 1 -- 每次加几个
start with 50 -- 从1开始计数,已经有了28个
nomaxvalue -- 不设置最大值
nocycle -- 一直累加,不循环
nocache -- 不建缓冲区
;
create trigger mem_trig before
insert on IDA_PERMISSION for each row when (new.PERMISSION_ID is null)
begin
select IDA_PERMISSIONt.nextval into:new.PERMISSION_ID from dual;
end;
2.2 角色表自增主键,分开执行
drop SEQUENCE IDA_ROLEt;
CREATE SEQUENCE IDA_ROLEt
increment by 1 -- 每次加几个
start with 50 -- 从1开始计数,已经有了4个
nomaxvalue -- 不设置最大值
nocycle -- 一直累加,不循环
nocache -- 不建缓冲区
create trigger mem_trigtow before
insert on IDA_ROLE for each row when (new.ROLE_ID is null)
begin
select IDA_ROLEt.nextval into:new.ROLE_ID from dual;
end;
2.3 角色和权限表
drop SEQUENCE IDA_ROLE_PERMISSIONt;
CREATE SEQUENCE IDA_ROLE_PERMISSIONt
increment by 1 -- 每次加几个
start with 50 -- 从1开始计数,已经有了4个
nomaxvalue -- 不设置最大值
nocycle -- 一直累加,不循环
nocache -- 不建缓冲区
create trigger mem_trig3 before
insert on IDA_ROLE_PERMISSION for each row when (new.ID is null)
begin
select IDA_ROLE_PERMISSIONt.nextval into:new.ID from dual;
end;
2.4 用户表
drop SEQUENCE IDA_USERt;
CREATE SEQUENCE IDA_USERt
increment by 1 -- 每次加几个
start with 50 -- 从1开始计数,已经有了4个
nomaxvalue -- 不设置最大值
nocycle -- 一直累加,不循环
nocache -- 不建缓冲区
create trigger mem_trig4 before
insert on IDA_USER for each row when (new.USER_ID is null)
begin
select IDA_USERt.nextval into:new.USER_ID from dual;
end;
2.5 用户和角色表
drop SEQUENCE IDA_USER_ROLEt;
CREATE SEQUENCE IDA_USER_ROLEt
increment by 1 -- 每次加几个
start with 50 -- 从1开始计数,已经有了4个
nomaxvalue -- 不设置最大值
nocycle -- 一直累加,不循环
nocache -- 不建缓冲区
create trigger mem_trig5 before
insert on IDA_USER_ROLE for each row when (new.ID is null)
begin
select IDA_USER_ROLEt.nextval into:new.ID from dual;
end;