10月19日
一、修改撤销记录的保留时间
1.任务场景:在撤销表空间中存放的数据需要有保留时间,那么我们可以通过修改撤销记录保留时间管理撤销表空间的数据。
2.格式
ALTER SYSTEM SET undo_retention=time
3.实践
例如:修改撤销表空间数据保留时间为1200秒
查看没有设置之前撤销表空间数据的保留时间
show parameter undo_retention;
设置撤销表空间的保留时间
ALTER SYSTEM SET undo_retention=1200;
查看设置之后撤销表空间数据的保留时间
show parameter undo_retention;
二、删除撤销表空间
1.格式
drop tablespace tablespace_name including contents and datafiles;
2.实践
例如:尝试删除myundo撤销表空间
drop tablespace myundo including contents and datafiles;
通过测试提示撤销表空间正在使用因此无法完成删除,那么正确的删除方法应该先将撤销表空间切换为系统默认表空间。
第一步 切换系统默认撤销表空间
alter system set undo_tablespace='undo'tbs1';
第二步删除撤销表空间
drop tablespace myundo including contents and datafiles;
三、数据对象的数据类型
1.分类
字符类型:varchar2(size)
数字类型:number(p,s)p表示数值总宽度,s保留的小数位。比如number(5,2),123,12
日期时间:data
大对象类型
四、创建数据表
1.格式
create table table_name
(column_name datatype……)
2.实践
例如:创建empbd数据表(empno number(4),ename varchar2(20))
create table empbd
(empno number(4),ename varchar2(20));
查看数据表结构
desc empbd;
五、数据表删除
1.格式
drop table table_name
2.实践
例如:删除empbd数据表
drop table empbd;
例如:请将刚才创建的empbd数据表再创建一遍,然后尝试向此数据表中填充三条数据。
(null,'aa')
(1000,'bb')
(1000,'cc')
再执行查询语句查看数据表中数据,思考此数据表规范性的要求吗?
六、数据表的完整性
1.任务场景:软件在手机数据的过程中,需要收集到有效的数据,比如可以唯一确定一个对象或者一个实体的数据,除此之外降低空值数据出现。
这个就需要在创建数据表的时候加入建表规则即约束,这样就可以保证数据的有效性和完整性。
2.分类
主键
外键
唯一
非空
默认值
检查(取值范围)
七、非空约束
1.功能:禁止—列包含空值
2.格式
column name datatype not null
3.实践
例如:创建没有非空约束数据表并尝试填充数据感受数据的不规整。 create table empbd(empno number(4),ename varchar2(10));
尝试向数据表中填充包含空值的数据
insert into empbd(empno) values(1000);
insert into empbd(empno,ename) values(2000,null);
insert into empbd values(2000,'aaa');
查看填充结果
select*from empbd;
通过实践过程我们发现如果在设计数据表的时候,缺失非空设置会让我们收到很多无效空值数据。这样会影响我们的数据统计结果,因此在设计数据表的时候我们应该添加非空约束。
删除数据表
drop table empbd;
例如:创建包含非空约束数据表并尝试填充数据感受数据的规整
create table empbd(empno number(4),ename varchar2(10) not null);
尝试向数据表中填充包含空值的数据
insert into empbd(empno) values(1000);
insert into empbd(empno,ename) values(2000,null);
insert into empbd values(2000,'aaa');
查看填充结果
select * from empbd;
八、唯一约束(unique)
1.任务场景:在软件使用的过程中,用户名要求数据不能出现重复值,即数据的唯一性。这个时候我们可以通过设置数据表的唯一约束完成数据值不能重复的要求。
2.格式
列一级
column_name datatype unique
表一级
create table table_name
(column datatype_
,constraint table_name_colum_uq unique(column_name))
3.实践
例如:创建没有唯一约束数据表并尝试填充数据感受数据的不规整。
create table empbd(empno number(4),ename varchar2(10));
尝试向数据表中填充包含重复的数据
insert into empbd values(1000,'aaa');
insert into empbd values(2000,'aaa');
查看填充数据
select*from empbd;
通过 实践过程我们发现如果在设计数据表的时候,缺失唯一约束设置会让我们收到很多无效空值数据,这样会影响我们的数据统计结果,因此在设计数据表的时候我们应该添加唯一约束。
删除数据表
drop table empbd;
例如:创建包含唯一约束数据表并尝试填充数据感受数据的规整,使用列一级。
create table empbd(empno number(4),ename varchar2(10) unique);
尝试向数据表中填充包含重复的数据
insert into empbd values(1000,'aaa');
insert into empbd values(2000,'aaa');
查看填充数据
select*from empbd;
例如:创建包含唯一约束数据表并尝试填充数据感受数据的规整,使用表一级。
create table empbd(empno number(4),ename varchar2(10),constraint empbd_ename unique(ename));
尝试向数据表中填充包含重复的数据
insert into empbd values(1000,'aaa');
insert into empbd values(2000,'aaa');
查看填充数据
select*from empbd;
10月20日
一.主键约束
1.任务场景在软件使用的过程中,用户名要求数据不能出现重复值,即数据的主键性。这个时候我们可以通过设置数据表的主键约束完成数据值不能重复的要求
2.格式
列一级
column_name datatype primary key
表-级
create table table_name
(column datatype......,constraint table_name_column_pk primary key(column_name))
3.实践
例如:创建没有主键约束数据表并尝试填充数据感受数据的不规整。
Drop table empbd;
create table empbd(empno number(4),ename varchar2(10));
尝试向数掘表中填充包含重复的数据
insert into empbd values(1000,’zizhen’);
insert into empbd values(1000,'aa’);
insert into empbd values(null,'bb’);
查看填充结果
select*from empbd;
通过实践过程我们发现如果在设计数据表的时候,缺失主键设置会让我们收到很多无效空值数据。这样会影响我们的数据统计结果,因此在设计数据表的时候我们应该添加主键约束。
删除数据表
drop table empbd;
例如:创建包含主键约束数据表并尝试填充数据感受数据的规整。使用列一级。
create table empbd(empno number(4) primary key,ename varchar2(10));
尝试向数据表中填充包含重复的数据
insert into empbd values(1000,’zizhen’);
insert into empbd values(1000,'aa’);
insert into empbd values(null,'bb’);
查看填充结果
select* from empbd;
例如:创建包含主键约束数据表并尝试填充数据感受数据的规整,使用表一级.
drop table empbd;
create table empbd(empno number(4),ename varchar2(10),constraint empbd_ename primary key(empno));
尝试向数据表中境充包含重复的数据
insert into empbd values(1000,’zizhen’);
insert into empbd values(1000,'aa’);
insert into empbd values(null,'bb’);
查看填充结果
select from empbd;
二、检查约束(check)范围约束
1.任务场景:在某些列标题填充数据的时候,会碰到数据取值范围限定的需求这个我们需要通过定义检查约束限定数据的取值范围。
2.功能:如果某个列标题定义为检查约束,那么这个列标题下的数据值将来填充的时候有个数据的取值范围。
3.格式
列一级
column_name datatype
例如:创建没有检查约束数据表并尝试填充数据感受数据的不规整。
drop table empbd;
create table empbd(empno number(4),esex varchar2(10));
尝试向数据表中填充非法数据
insert into empbd values(1000,'男');
insert into empbd values(2000,'女');
insert into empbd values(3000,'djjdj');
查看填充数据
select*from empbd;
通过 实践过程我们发现如果在设计数据表的时候,缺失检查约束设置会让我们收到很多无效空值数据,这样会影响我们的数据统计结果,因此在设计数据表的时候我们应该添加检查约束。
删除数据表
drop table empbd;
例如:创建包含检查约束数据表并尝试填充数据感受数据的规整,使用列一级。
create table empbd(empno number(4),esex varchar2(10) check(esex in ('男','女')));
尝试向数据表中填充非法数据
insert into empbd values(1000,'男');
insert into empbd values(2000,'女');
insert into empbd values(3000,'djjdj');
查看填充数据
select*from empbd;
例如:创建包含唯一约束数据表并尝试填充数据感受数据的规整,使用表一级。
create table empbd(empno number(4),esex varchar2(10),constraint empbd_esex_ck check(esex in('男','女')));
尝试向数据表中填充非法数据
insert into empbd values(1000,'男');
insert into empbd values(2000,'女');
insert into empbd values(3000,'djjdj');
查看填充数据
select*from empbd;