Welcome 微信登录

首页 / 数据库 / MySQL / Oracle建库流程例子

sqlplus system/system@orcl  --连接SQL>ed a  --创建sql文本
SQL>get a  --把a.sql载入缓存
SQL>/create temporary tablespace sa_temp  --临时表空间
tempfile "E:dbfsa_temp.dbf"
size 10m
autoextend on;create tablespace sa_space --表空间
logging
datafile "E:dbfsa_space.dbf"
size 20m --20M
autoextend on; --自动增长
create user sa identified by sa --创建用户 使用对应的表空间
default tablespace sa_space
temporary tablespace sa_temp;
grant connect,resource,dba to sa; --授予连接 、dba权限给用户
conn sa/sa    --角色sa
--创建学员信息表
create table studentInfo(
stuId number primary key not null,
tel nvarchar2(15),
sex char(2) not null,
schoolTime date not null,
email nvarchar2(50) not null,
remark nvarchar2(500) not null
);
--创建课程表
create table Course(
courseId number primary key not null,
courseCode nvarchar2(15),   --课程代码
courseName nvarchar2(50)
);
--创建学员与课程关系表(多对多)
create table stdent_course(
courseId number not null,
stuId number not null
);
--创建序列
create sequence seq_studentInfo_stuId  --学员序列
 increment by 1       -- 每次加1
     start with 1     -- 从1开始计数 
     nomaxvalue       -- 不设置最大值 
     nocycle          -- 一直累加,不循环 
     nocache          -- 不建缓冲区
create sequence seq_course_courseId    --课程序列
 increment by 1       -- 每次加1
     start with 1     -- 从1开始计数 
     nomaxvalue       -- 不设置最大值 
     nocycle          -- 一直累加,不循环 
     nocache          -- 不建缓冲区--创建触发器
create or replace trigger tri_studentInfo_stuId  --学员主键自增
before
insert on studentInfo for each row
begin
select seq_studentInfo_stuId.nextval into :New.stuId from dual;
end;
create or replace trigger tri_course_courseId    --课程主键自增
before
insert on course for each row
begin
select seq_course_courseId.nextval into :New.courseId from dual;
end;--建立课程表主外建关系
alter table stdent_course add constraint fk_stdentcourse_courseId
 foreign key(courseId) references course(courseId);--建立学员主外建关系
alter table stdent_course add constraint fk_stdentcourse_courseId
 foreign key(stuId) references studentId(stuId);
--sql测试
insert into studentinfo(tel,sex,schooltime,email,remark)
values("123456","男",to_date("2011-01-12","yyyy-MM-dd"),"ss@ww.com","爱是刚");
insert into studentinfo(tel,sex,schooltime,email,remark)
values("111111","男",to_date("2011-02-12","yyyy-MM-dd"),"ss1@ww.com","爱是刚111");insert into course(coursecode,coursename)values("001","语文");
insert into course(coursecode,coursename)values("002","数学");insert into stdent_course (stuid,courseid)values(1,1);
insert into stdent_course (stuid,courseid)values(1,2);
insert into stdent_course (stuid,courseid)values(2,1);select * from studentinfo;
select * from course;
select * from stdent_course;Oracle正常使用必须开启的服务Oracle一些函数 lpad nvl upper replace相关资讯      Oracle教程 
  • Oracle中纯数字的varchar2类型和  (07/29/2015 07:20:43)
  • Oracle教程:Oracle中查看DBLink密  (07/29/2015 07:16:55)
  • [Oracle] SQL*Loader 详细使用教程  (08/11/2013 21:30:36)
  • Oracle教程:Oracle中kill死锁进程  (07/29/2015 07:18:28)
  • Oracle教程:ORA-25153 临时表空间  (07/29/2015 07:13:37)
  • Oracle教程之管理安全和资源  (04/08/2013 11:39:32)
本文评论 查看全部评论 (0)
表情: 姓名: 字数