一、Oracle支持的数据类型
1、字符型
1)char:定长,最大2000字符。
- eg:char(10) ,“小韩”,前四个字符放“小韩”,后面添加6个空格补全,为“小韩 ”。
2)varchar2(20):变长,最大4000字符。
- eg:varchar2(10),“小韩”,oracle分配四个字符,这样可以节省空间。
3)clob(character large object):字符型大对象,最大4G。
2、数字型
1)number:范围为(10的-38次方~10的38次方),可以表示整数,也可以表示小数。
2)number(5,2):表示一个小数有5为有效数子,其中,2为小数位数。范围[-999.99,999.99]。
3)number(5):表示一个五位整数,范围[-9999,9999]。
3、日期类型
1)date:包含年月日和时分秒。
2)timestamp:oracle9i对date数据类型的扩展。
4、图片
blob:二进制数据,可以存放图片/声音,4G。
二、表的管理
1、建表
1)学生表
2)班级表
2、修改表
- 修改一个字段
-
- alter table student add (classid number(2));
- 修改字段的长度
-
- alter table student modify (xm varchar2(30));
- 修改字段的类型/或是名字(不能有数据)
-
- alter table student modify (xm char(30));
- 删除一个字段
-
- alter table student drop column sal;
- 修改表的名字
-
- rename student to stu;
- 删除表
-
- drop table student;
3、添加数据
1)所有字段都插入
- insert into students values('A001','张三','男','01-5月-05',10);
2)Oracle默认的日期格式'DD-MON-YY'。
- alter session set nls_date_format='yyyy-mm-dd';
- 修改后,可以用新格式添加日期类型
- insert into students values('A002','MIKE','男','1905-05-06',10);
3)插入部分字段
- insert into students (xh,xm,sex) values ('A003','JOHN','女');
4)插入空值
- insert into students(xh,xm,sex,birthday) values('A004','MARTIN','男',null);
4、修改数据
1)改一个字段
- update students set sex='女' where xh='A001';
2)修改多个字段
- update students set sex='男', birthday='1980-04-01' where xh='A001';
3)修改含有null值的数据(is null)
5、删除数据
1)删除所有记录,表结构还在,写日志,可以恢复的,速度慢。
- delete from students;
2)删除表的结构和数据
- drop students;
3)删除一条记录
- delete from students where xh='001';
4)删除表中的所有记录,表结构还在,
不写日志,无法找回删除的记录,速度快。
- truncate table students;
6、保存点
- savepoint a;
- rollback to a;