一、[创建数据表] createtable 代码手敲 且增加注释 问题:字段为系统默认日期怎么定义?
create table students( --创建名为students的数据表
stuno number(10) not null, --定义学号列
stuname varchar2(10) not null, --定义姓名列
sex char(2), --定义性别列
age int,–定义年龄列
departno varchar2(2) not null, --定义系别编号列
classno varchar2(5) not null, --定义班级编号列
regdate date default sysdate); --定义建档日期列,并设置其默认系统当前日期
二、表和用户是什么关系?
一个用户下可以拥有多个表,一个表只能属于一个用户。
三、用户和表空间什么关系?
一个用户内可以有多个表空间,一个表空间也可以供多个用户使用。
四、总结 表、用户、表空间、数据文件的关系…
一个用户可对应多个表空间,一个表空间也可以供多个用户使用;
一个表空间内可有多个数据文件,一个数据文件只能属于一个表空间;
一个数据文件中可以有多个表,一个表只属于一个数据文件。
解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。
五、写出根据A表直接创建B表的SQL…
六、[创建数据表] createtable_initial 代码手敲 且增加注释 同 createtable 代码区别是什么?
create table students( --创建名为students的数据表
stuno number(10) not null, --定义学号列
stuname varchar2(10) not null, --定义姓名列
sex char(2), --定义性别列
age int,–定义年龄列
departno varchar2(2) not null, --定义系别编号列
classno varchar2(5) not null, --定义班级编号列
regdate date default sysdate) --定义建档日期列,并设置其默认系统当前日期
9 tablespace local2 --将该表指定在local2表空间中
10 storage(initial 256k); --初始盘区大小为256k
区别:前者没有指定表空间,会存放在系统默认表空间下,后者指定了表空间;
前者没有设定初始盘区大小,后者设定初始盘区大小为256k。
七、写出根据表名查询表所属表空间的SQL…
select tablespace_name from dba_tables
where table_name=‘students’;
八、[创建数据表] createtable_nologging 代码手敲 且增加注释
SQL> create table students_4( --创建名为students_4的表
2 stuno number(10) not null, --定义学号
3 stuname varchar2(10) not null, --定义姓名
4 sex char(2), --定义性别
5 age int, --定义年龄
6 departno varchar2(5) not null, --定义系别编号
7 classno varchar2(5) not null, --定义班级编号
8 regdate date default sysdate) --定义建档日期列,并设置其默认系统当前日期
9 tablespace local2 --将该表指定在local2表空间中
10 storage(initial 256k)–初始盘区大小为256k
11 pctfree 20 --设置自由块
12 pctused 40 --已被使用的块
13 initrans 10 --指定一个数据块所允许并发事务的数量
14 nologging; --用户对表的创建、修改、删除等操作不会记录到日志当中
九、写出 已存在的表中 增加字段的SQL…
十、写出 已存在的表中 删除字段的SQL…
十一、写出 已存在的表中 修改字段的SQL…
十二、写出 已存在的表 修改表名的SQL…
十三、写出 更改已存在表的表空间SQL…
十四、写出 已存在的表 删除表的SQL…以及注意事项是什么?
drop table table_name [cascade constraints]
如果表中存在数据记录或者存在外键,需要指定cascade constraints,否则会报错。
十五、写出 已存在的表 更改其为只读/可读写状态SQL…
十六、写出 已存在的表 修改列为非空约束的SQL…
十七、行级约束和表级约束的区别是什么?
如果主键约束由一列组成时,该主键约束被称为行级约束。如果主键约束由两个或两个以上的列组成时,则该主键约束被称为表级约束。
十八、UNIQUE 的作用是什么?
唯一性约束的主要作用是在保证除主键列外,其它列值的唯一性。强调所在的列不允许有相同的值。
十九、写出 删除已存在的约束SQL…
二十、写出 禁用已存在的约束SQL…