常用的字符数据类型是varchar2 可变长度,定义长度6存一个字符最终从数据库取出时会把多余长度去掉,常用的数值类型时NUMBER ,例如MUMBER(2)表示的能存的最大值为99,NUMBER(4,2)表示能存的最大值为99.99
创建表:
--创建有个person表
create table person(
pid number(20),
pname varchar2(10)
);
--修改表结构
--添加一列(如果添加多列就在括号中逗号分割继续写)
alter table person add (gender number(1));
--修改列类型(char是不可变长度,设置多少取出长度就是多少)
alter table person modify gender char(1);
--修改列名称
alter table person rename column gender to sex;
--删除一列
alter table person drop column sex;
--添加一条纪录(记得加commit,不加commit提交一下没有真正添加进去)
insert into person (pid,pname) values (1,'小明');
commit;
执行
select * from person;
--修改一条纪录
update person set pname = '小马' where pid = 1;
commit;
--三个删除
--删除表中全部纪录
delete from person;
--删除表结构
drop table person;
--删除表,再创建表,效果等同于删除表全部记录
--在数据量大的情况下,尤其在表中带有索引的情况下,该操作的效率很高
--索引可以提高查询效率,但是会影响增删改的效率
truncate table person;
--序列不真的属于任何一张表,但是可以逻辑和表做绑定
--序列:默认从1开始,依次递增,主要用来给主键赋值使用
--dual:虚表,只是为了补全语法,没有任何意义
create sequence s_person;
select s_person.nextval from dual;
每执行一次 select s_person.nextval from dual;
就会加1
--查看当前的,执行会一直是2
select s_person.currval from dual;
--添加一条纪录
insert into person (pid,pname) values (s_person.nextval,'小明');
commit;