Oracle数据库建表+添加数据练习

SQL脚本:

 1 --建表
 2 --student表+注释
 3 create table student(
 4        sno   varchar2(3) not null,
 5        sname varchar2(9) not null,
 6        ssex  varchar2(3) not null,
 7        sbirthday date,
 8        sclass varchar2(5),
 9        constraint pk_student primary key(sno)
10 );
11 comment on column student.sno is ‘学号(主键)‘;
12 comment on column student.sname is ‘学生姓名‘;
13 comment on column student.ssex is ‘学生性别‘;
14 comment on column student.sbirthday is ‘学生出生年月日‘;
15 comment on column student.sclass is ‘学生所在班级‘;
16 --course表+注释
17 create table course(
18        cno       varchar2(5) not null,
19        cname     varchar2(15) not null,
20        tno       varchar2(3) not null,
21        constraint pk_course primary key(cno)
22 );
23 comment on column course.cno is ‘课程编号(主键)‘;
24 comment on column course.cname is ‘课程名称‘;
25 comment on column course.tno is ‘教工编号(外键)‘;
26 --score表+注释
27 create table score(
28         sno   varchar2(3) not null,
29         cno   varchar2(5) not null,
30         degree   number(4,1),
31         constraint pk_score primary key(sno,cno)
32 );
33 comment on column score.sno is ‘学号(主键)‘;
34 comment on column score.cno is ‘课程编号(主键)‘;
35 comment on column score.degree is ‘成绩‘;
36 --teacher表+注释
37 create table teacher(
38        tno   varchar2(3) not null,
39        tname varchar2(9) not null,
40        tsex  varchar2(3) not null,
41        tbirthday date,
42        prof  varchar2(9),
43        depart varchar2(15) not null,
44        constraint pk_teacher primary key(tno)
45 );
46 comment on column teacher.tno is ‘教工编号(主键)‘;
47 comment on column teacher.tname is ‘教工姓名‘;
48 comment on column teacher.tsex is ‘教工性别‘;
49 comment on column teacher.tbirthday is ‘教工出生年月‘;
50 comment on column teacher.prof is ‘职称‘;
51 comment on column teacher.depart is ‘教工所在单位‘;
52 --添加外键
53 alter table course add constraint fk_tno foreign key(tno) references teacher(tno);
54 alter table score add constraint fk_sno foreign key(sno) references student(sno);
55 alter table score add constraint fk_cno foreign key(cno) references course(cno);
56 --添加数据
57 --Student表
58 insert into student(sno,sname,ssex,sbirthday,sclass) values(108,‘曾华‘,‘男‘,to_date(‘1977-09-01‘,‘yyyy-mm-dd‘),95033);
59 insert into student(sno,sname,ssex,sbirthday,sclass) values(105,‘匡明‘,‘男‘,to_date(‘1975-10-02‘,‘yyyy-mm-dd‘),95031);
60 insert into student(sno,sname,ssex,sbirthday,sclass) values(107,‘王丽‘,‘女‘,to_date(‘1976-01-23‘,‘yyyy-mm-dd‘),95033);
61 insert into student(sno,sname,ssex,sbirthday,sclass) values(101,‘李军‘,‘男‘,to_date(‘1976-02-20‘,‘yyyy-mm-dd‘),95033);
62 insert into student(sno,sname,ssex,sbirthday,sclass) values(109,‘王芳‘,‘女‘,to_date(‘1975-02-10‘,‘yyyy-mm-dd‘),95031);
63 insert into student(sno,sname,ssex,sbirthday,sclass) values(103,‘陆君‘,‘男‘,to_date(‘1974-06-03‘,‘yyyy-mm-dd‘),95031);
64 --teacher表
65 insert into teacher(tno,tname,tsex,tbirthday,prof,depart) values(804,‘李诚‘,‘男‘,to_date(‘1958/12/02‘,‘yyyy-mm-dd‘),‘副教授‘,‘计算机系‘);
66 insert into teacher(tno,tname,tsex,tbirthday,prof,depart) values(856,‘张旭‘,‘男‘,to_date(‘1969/03/12‘,‘yyyy-mm-dd‘),‘讲师‘,‘电子工程系‘);
67 insert into teacher(tno,tname,tsex,tbirthday,prof,depart) values(825,‘王萍‘,‘女‘,to_date(‘1972/05/05‘,‘yyyy-mm-dd‘),‘助教‘,‘计算机系‘);
68 insert into teacher(tno,tname,tsex,tbirthday,prof,depart) values(831,‘刘冰‘,‘女‘,to_date(‘1977/08/14‘,‘yyyy-mm-dd‘),‘助教‘,‘电子工程系‘);
69 --course表(添加外键后要先填teacher表中数据去满足外键约束)
70 insert into course(cno,cname,tno) values(‘3-105‘,‘计算机导论‘,825);
71 insert into course(cno,cname,tno) values(‘3-245‘,‘操作系统‘,804);
72 insert into course(cno,cname,tno) values(‘6-166‘,‘数字电路‘,856);
73 insert into course(cno,cname,tno) values(‘9-888‘,‘高等数学‘,831);
74 --score表(添加外键后要先填Student,course表中数据去满足外键约束)
75 insert into score(sno,cno,degree) values(103,‘3-245‘,86);
76 insert into score(sno,cno,degree) values(105,‘3-245‘,75);
77 insert into score(sno,cno,degree) values(109,‘3-245‘,68);
78 insert into score(sno,cno,degree) values(103,‘3-105‘,92);
79 insert into score(sno,cno,degree) values(105,‘3-105‘,88);
80 insert into score(sno,cno,degree) values(109,‘3-105‘,76);
81 insert into score(sno,cno,degree) values(101,‘3-105‘,64);
82 insert into score(sno,cno,degree) values(107,‘3-105‘,91);
83 insert into score(sno,cno,degree) values(108,‘3-105‘,78);
84 insert into score(sno,cno,degree) values(101,‘6-166‘,85);
85 insert into score(sno,cno,degree) values(107,‘6-166‘,79);
86 insert into score(sno,cno,degree) values(108,‘6-166‘,81);

Student表                                                                                             Course表

                                        

Score表

Teacher表

时间: 2024-10-05 12:48:23

Oracle数据库建表+添加数据练习的相关文章

ORACLE数据库建表空间、建用户、分配用户表空间,分配用户权限

1.建表空间 create tablespace 表空间名 datafile  'D:\app\Administrator\oradata\orcl\ABC.DBF' size 100M autoextend on next 50M extent management 2.建用户 create  user 用户名  identified by password default tablespace 表空间名 temporary tablespace temp   (默认表空间名) 3.给用户赋予

Oracle数据库建表并用SQL编程分等级

--创建学生表create table XS_543 ( XH char(6) not null , XM varchar2(20) not null, ZYM varchar2(10), XB char(4) default '男', CSSJ date, ZXF number(2), BZ varchar2(100), constraint pk_xh primary key(xh)); --创建课程表 create table KC_543( KCH char(3) not null ,

oracle数据库建表

create or replace directory dumpdir as 'E:\oracle\dumpdir';create temporary tablespace ydxt_temp tempfile 'E:\oracle\product\10.2.0\oradata\ydxt\ydxt_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; create tablespace

oracle 数据库 建表 作业

-- Create table create table STUDENT ( sno VARCHAR2(3) not null, sname VARCHAR2(8) not null, ssex VARCHAR2(2) not null, sbirthday DATE, class VARCHAR2(5) ) tablespace USERS pctfree 10 initrans 1 maxtrans 255 storage ( initial 64K next 1M minextents 1

OREACLE 数据库建表 添加判断表是否存在 不存在则新建

declare  cnt number; begin   ---查询要创建的表是否存在   select count(*)into cnt from user_tables where table_name='USERLOG';   ---如果存在则删除该表   if cnt>0 then      dbms_output.put_line('表存在不创建');   else       dbms_output.put_line('表不存在');    execute immediate 'CR

建表添加数据

使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复

这种操作百度一搜一大片,今天整理以前做的项目时自己备份了一下数据库,试着将数据进行导出备份和导入恢复了一下:下面是操作过程: 1 开启服务 2 配置监听 找到下面文件: 记事本打开 在导航器的下拉菜单中选择:将数据库添加到树, 然后点击确定 然后使用PL/SQL就可以登录了: 3 建立新表空间和新用户 使用system用户登录:执行如下sql语句建立表空间和新用户,以及给用户授权 建立表空间 Create tablespace myyyjc datafile 'D:\app\Administra

Oracle数据库创建表空间

--Oracle数据库创建表空间 create tablespace new_taspace --表空间名 DATAFILE 'D:\NEWTABLESPACE.DBF'   --表空间关联的数据文件和位置 size 200M --文件初始大小 autoextend on next 20MB MAXSIZE 400MB; --文件大小可自动扩展,每次扩展20MB,最大400MB --创建表空间 create tablespace new_taspace1 --表空间关联的数据文件和位置 DATA

数据库建表原则

关键字: 数据库建表原则 ·1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体.在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单证对应多个实体,或多张原始单证对应一个实体.这里的实体可以理解为基本表.明确这种对应关系后,对我们设计录入界面大有好处. [例]:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表.社会关系表.工作简历表.这就是“一张原始单证对应多个实体”的典型例子.