oracle学习笔记-数据类型跟简单的表管理

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 保存点名字