ORACLE 11G学习笔记9—数据表相关

本文详细介绍了Oracle 11G中创建数据表的相关操作,包括创建表、理解表与用户、表空间的关系,以及如何指定表空间、初始化参数、自由块比例、并发事务数量等。同时,讲解了表的修改、删除、约束管理和表的只读/读写状态调整等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、[创建数据表] 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…
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值