·SQL语言的分类
数据定义语言DDL(create alter drop)
数据操纵语言DML(insert update delete select)
事务控制语言TCL(commit rollback)
数据控制语言DCL(grant revoke)
·ORACLE数据库中的伪列rowid,rownum
伪列本省不需要我们自己添加,数据库会默认帮我们添加
rowid用于明确区分数据库中的一条件,如果数据库中数据存在2行所有字段都一摸一样的情况可以是用rowid来区分
rownum用于取数据表中前几行的数据,注意,rownum查询只能
·数据定义语言DDL
create表的约束create table temp(
empno number,
ename varchar2(200) default 'lifan',--表示ename默认为'lifan'
deptno number default 110, --表示deptno默认为110
edate date default sysdate, --默认值,表示为当前日期
address varchar2(200) not null, --非空
sal number(8,2) constraint emp_salary_min check (sal>0),--检查约束,表示这个字段必须大于0
constraint fk_deptno foreign key(deptno) references dept(deptno),--外键
constraint pk_empno primary key(empno));--主键
default表示默认值,如果是字符类型的默认值需要加单引号,数字可以直接写
sysdate表示系统当前时间
not null表示非空,如果为某个字段修饰为not null 那么这个字段不能插入空值
·主键(非空,唯一)*
方法一
直接在某个字段后加primary key
方法二
先建表,在修改某个字段为主键alter table 表名 add constraint 主键名称 primary key(主键字段);
alter table temp add constraint pk_empno primary key(empno)
方法三
写在建表语句后
·外键
(为表与表之间关联的字段添加约束,保证数据完整性)
外键必须是关联表的主键
方法一
先建表,在修改某个字段为外键alter table 表名 add constraint 外键名称 foreign key(外键字段) references 关联表(主键字段)
alter table temp constraint fk_deptno foreign key(deptno) references dept(deptno)
方法二
写在建表语句后
--ALTER(修改表结构)
dual伪表,这个表是没有任何数据也没有表结构,主要用于测试