时间:2021-07-01 10:21:17 帮助过:18人阅读
create table语句 --create table权限 --存储空间
数据类型 varchar2(size) 可变长字符数据(默认4kb) char(size) 定长字符数据 number(p,s) 可变长数值数据 date 日期型数据 long 可变长字符数据,最大可达到2G clob 字符数据,最大可达到4G raw and long raw 原始的二进制数据 blob 二进制数据,最大可达到4G bfile 存储外部文件的二进制数据,最大可达到4G rowid 行地址(索引中存储的就是行地址)
--创建一个表 create table t2 ( tid number, tname varchar2(20), hiredate date default sysdate--设置该字段的默认值 )
alter table 语句追加,修改,或者删除语法 --追加 SQL> alter table t2 add (sid2 number,sid3 number); --修改 SQL> alter table t2 modify (tname varchar2(30),sid2 long); --删除列 SQL> alter table t2 drop column sid2;
删除表 1.数据和结构都被删除 2.所有正在运行的相关事务都被提交 3.所有相关索引都被删除 4.DROP TABLE 语句不能回滚,但是可以闪回 语法结构:DROP TABLE 表名
普通用户下,表被删除会进入回收站(管理员没有回收站) --清空回收站 purge recyclebin; --彻底删除一张表 drop table test1 purge;
约束 --约束是表一级的限制 --如果存在依赖关系,约束可以防止错误的删除数据 --约束类型 NOT NULL 非空 UNIQUE 唯一性 PRIMARY KEY 主键 FOREIGN KEY 外键 CHECK 检查 create table student ( sid number constraint student_sid_pk primary key,--主键约束 sname varchar2(40), email varchar2(40) not null,--这是由oracle系统创建约束名 sex number constraint student_sex_notnull not null,--这是自定义约束名,constraint是关键字 age number constraint student_age_notnull not null constraint student_age_unique unique, --一个字段定义多个约束 numx number constraint student_age_check check(numx<20)--检查约束 deptno number constraint student_deptno_fk references dept(deptno)--外键约束 --references是关键字,表示student表的deptno字段需要参考dept表的deptno字段 )
有关check约束 --可以使用in关键字 create table student ( sex varchar2(10) constraint student_sex_check check(sex in (‘男‘,‘女‘)) )
有关primary key约束 --主键约束 通过这一列 唯一确定一行值 --若定义主键约束 隐含 非空且唯一约束
有关foreign key外键约束 --定义两张表,一个表的列值引用另一个表的列值 员工表 部门表 子表的外键关联的是父表的主键 --父表中数据被子表引用,则父表相应记录删不掉 若想删除 级联删除 级联置空 --子表中插入数据,外键必须在父表中存在,否则插入出错
外键约束(续) foregin key:在子表中定义了一个表级的约束 references:指定表和父表中的列 on delete cascade:当删除父表时,级联删除子表记录(一般情况下不使用,因为会破坏子表数据) on delete set null:将子表相关的依赖记录的外键值置为空值(一般情况下不使用,因为会破坏子表数据) ed: create table student ( sid number, deptno number constraint student_deptno_fk references dept(deptno) on delete set null )
数据库 Oracle数据库对象一
标签:arc prim lte div bsp -- ref 插入 另一个