建表
——形式
————create table 表名(
列名 数据类型 列级约束
列名 数据类型 列级约束
...
);
——数据类型
————number,varchar2(),date,blob,clob,char
——约束类型
————主键约束 primary key() ,表级约束方法
或
primary key ,列级约束方法。
————外键约束foreign key( 列名 )references 其他表名(列名), 表级约束方法
或
列名 references 其他表名(列名),列级约束方法。
删表
————drop table 表名
添加数据
————insert into 表名(列名,列名,列名...) values(数据,数据,数据...),一 一对应。
删除数据
————delete from 表名,清空表
————delete from 表名 where xx=xx; 指定信息删除,如where id< 10, salary>1000等
注意,某一列和其他表的列有级联关系的时候无法删除,除非加上 cascade constraints ,级联约束
更新数据
————update 表名 set 列名=xxx; 将表中此列全都更改为xxx。
————update 表名 set 列名=xxx where .....对指定的行更改,如
update 表名 set name = '狗二' where id = 1;
update 表名 set name = '狗二' where id > 1;等等
alter 对列进行操作
——增加列 alter table 表名 add 列名 约束
——删除列 alter table 表名 drop column 列名
——添加约束 alter table 表名 add constraint 约束名 约束类型(列名);
如:alter table student_table add constraint check(gender in('man','women'));
——删除约束 alter table 表名 drop constraint 约束名 ;
——修改表名 rename 表的原名 to 表的新名
——修改某列的数据类型 alter table 表名 modify(列名 约束);
——使约束失效 alter table 表名 disable constraint 约束名 cascade;
——使约束重新生效 alter table 表名 enable constraint 约束名;
——截断表 truncate table 表名,相当于 delete from 表名; commit;
序列
——创建序列 create sequence 序列名
——删除序列 create sequence 序列名
——序列作用 如 先创建一张表
create table student(
id number primary key,
name varchar2(50) not null
);
创建序列
create sequence stu_sequence
使用序列自动添加id到表中
insert into table student(id,name)values(stu_sequence.nextval , '狗二');
insert into table student(id,name)values(stu_sequence.nextval , '狗三');
视图
——创建视图 create or replace view 视图名 as 条件语句
如 create or replace view view_student
as
select id,name
from table_student
where id > 10;
——删除视图 drop view 视图名
——简单视图
一个视图创建中,只操作一张表,且没有group by和组函数就是简单视图
——复杂视图
违反上面简单视图规则的就是复杂视图
——视图操作
对简单视图可以进行增删改操作,并且会影响原表。复杂视图只能查看。
如果想让简单视图也只能查看,在创建视图的时候后面加一句 with only read
索引
——创建索引 create index 索引名
on 表名(列名);
——删除索引 drop index 索引名;
——查看当前user的全部索引
select index_name from user_indexes;
——B-tree索引
——位图索引
——反序索引
——函数索引