Oracle的表管理
Oracle中支持的数据类型
1. 字符型
char 定长,最大2000字符。
char(10);//‘小明’占用4个字符,后面添加6个空格
varchar2 变长,最大字符4000。
varchar(20) ;//'小明',oracle分配4个字符来存储。
clob(character large object) 字符型大对象,最大4G。
2.数字型
number 可以是整数,也可以是小数。范围:负10的38次方到10 的38次方。
number(10,6);//有效数字10位,小数点后6位。
number(5);//表示5位整数。
3.日期类型
date 包括年月日和时分秒。oracle中默认格式为 dd-m月-yy;
timestamp 是对date的扩展,比date更精确,如果对时间的精确度相对严格的话,可以考虑使用。
oracle中表的创建
创建语句:create table 表名(字段名1 字段类型,字段名2 字段类型,…);
create table student(//表名
sid number(4),//学号
name varchar(20),//姓名
sex char(4));//性别
修改表结构
1.添加一个字段
alter table 表名 add(字段名 字段类型);
alter table student add(classid number(2));
2.修改字段的长度
alter table 表名 modify(字段名,数据类型);
alter table student modify(classid number(4));
3.修改字段的类型或着名字(注:这时不能有数据)
alter table 表名 modify(字段名,数据类型);
alter table student modify(classid varchar2(4))
4.删除一个字段
alter table 表名 drop column 字段名;
alter table student drop column classid;
5.修改表名
rename 表名 to 新表名;
rename student to student2;
添加数据
1.所有字段都插入
insert into 表名 values(所有字段对应所要添加的值);
insert into student values(1,'小明','男','28-7月-1997');
注:oracle中默认的日期格式为’dd-m月-yy’,如果想要插入我们常用的’yyyy-mm–dd’这种格式,那么我们就得将默认的格式修改。
alter session set nls_date_formate='yyyy-mm-dd';
2.插入部分字段
insert into 表名(所需要插入的字段名) values(插入字段对应所要添加的值);
insert into student(id,name) values(2,'李四');
3.插入空值
insert into student(id,name,sex,birthday) values(3,'王五','男',null);
修改数据
1.修改单个数据
updata student set 字段名=新值 where 条件;
updata student set sex='女' where id=1;
2.修改多个值
updata student set 字段名1=新值,字段名2=新值 where 条件;
updata student set sex='男',name='孙六' where id=1;
删除数据
1.delete from 表名;
删除表中的所有数据,表结构还在,写日志可以恢复,速度慢。
2.delete from 表名 where 条件;
删除表中某个数据或者多个数据。
3.drop table 表名;
删除某个表。
4.truncate table 表名;
删除表中所有数据,表结构还在,不写日志,无法找回删除的记录,速度快。