oracle学习笔记-数据类型跟简单的表管理
工作中要用到oracle数据库,刚刚开始学习,我在看韩顺平老师的视频学习,做了一点简单的笔记,oracle数据类型和简单的表管理。
ORACLE的最重点的内容:
1,表查询(各种查询)
2,存储过程
3,触发器
oracle数据类型:比较少,简单
char 定长 最大2000字符,不够的空间被空格占用,效率高,查询速度快,比如身份证号(18位)
varchar
2 节省空间,变长,最大4000字符,查询速度没有char快
clob 字符型大对象
number 数字类型,范围:-10的38次方到10的38次方,可以表示整数,也可以表示小数
比如:number(5,2) 表示一个小数有5位有效数,2位小数,范围:-999.99到999.99
number(5) 表示5位整数 范围:-99999到99999
日期类型
date 包含年月日和时分秒,一般用date
timestamp 这是oracle9i 对date 数据类型的扩展,精度高,到毫秒
图片类型
blob 二进制数据 可以存放图片/声音 视频,当这些类型保密性很高时,把图片/声音 视频存放到数据库中,一般的放在一个文件下下面
练习:
1、创建一个表
create table student(
xh number(4), --学号
xm varchar2(20),--姓名
sex char(2),--性别
birthday date,--出生日期
sal number(7,2) --奖金(99999.99)
);
create table classes(
classId numuber(2),
classname varcher(40)
);
右击新建也可以建一个表
2,删除一个表
drop table 表名字;
3,添加一个字段
alter table student add(classId number(2));
4,查看表命令:SQL>desc student;
5,修改字段的长度:alter table student modify(xm varchar(30));
6,删除一个字段:alter table student drop column 字段名
7,修改表的名字:sql>rename student to stu;
8,向表中添加数据
insert into 表名字 values(字段1,字段2.。。。。);
insert into student values(1,'小明','男','11-12月-1997',2000,三);
oracle中默认的日期格式是‘DD-MON-YY’
改日期格式:alter session set nls_date_format='yyyy-mm-dd'
insert into student values(1,'小明2','男','1997-12-11',2000,三);
9、插入部分字段
insert into student(xh,xm,sex) values('A003','JOHN','女');
插入空值
insert into student(xh,xm,sex,birthday) values(3,'aa','女',null);
查询字段为空时:
select * from student where birthday is null;
10,改一个字段
update student set sex='女' where xh='A001';
修改多个字段
update student set sex='男',birthday='1980-04-01' where xh='A001';
修改含有null值的数据
11、删除数据
delete from student;删除所有记录,表结构还在,写日志,可以恢复的,速度慢
drop table student; 删除表的结构和数据
truncate table student;
删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快
12、设置保存点和恢复保存点
savepoint 保存点名
rollback to 保存点名字