Oracle表的管理

一、表名和列的命名规则

1、必须以字母开头。

2、长度不能超过30字符。

3、不能使用Oracle的保留字。

4、只能使用如下字符 A-Za-z0-9$#等。

 

二、Oracle支持的数据类型

1、字符型

1 char

说明:定长,最大2000字符。

例子:char(10)'小寒'前四个字符放'小寒',后添6个空格补全

 

2varchar2(20)

说明:变长,最大4000字符。

例子:varchar(20)'小寒'Oracle分配四个字符,这样可以节省空间。

 

3clob

说明:字符型大对象,最大4G

 

2、数字型

1number

说明:范围-1038次方~1038次方。可以表示整数,也可以表示小数。

 

2number(5,2)

说明:表示一个小数有5位有效数,2位小数。范围-99999999.99

 

3number(5)

说明:表示一个5位整数。范围-9999999999

 

3、日期类型

1date

说明:包含年月日和时分秒。

 

2timestamp

说明:这是Oracle 9idate数据类型的扩展。

 

4、二进制数据

1blob

说明:二进制数据,可以存放图片/声音。最大可以存放4G

 

三、怎样创建表

建表

实例:学生表

sql>create table Students (

stuIdnumber(4),

stuNamevarchar2(20),

stuGenderchar(2),

stuBirthdaydate,

stuSalarynumber(7,2)

);

 

四、修改表

1、添加一个字段

sql>altertable Students add(classId number(2));

 

2、修改字段的长度

sql>altertable Students modify(stuName varchar2(30));

 

3、修改字段的类型/或是名字(不能有数据)

sql>altertable Students modify(stuName char(30));

 

4、删除一个字段

sql>altertable Students drop column stuSalary;

 

5、修改表的名字

sql>renameStudents to Student;

 

6、删除表

sql>droptable Students;

 

五、添加数据

1、所有字段都插入

sql>insertinto Students values(1,'Mike','','01-8-1993',1232.22);

注意:Oracle中默认的日期格式'dd-mon-yy'dd日子(天),mon月份,yy年,即'08-9-1992'199298日。

修改日期的默认格式:

sql>altersession set nls_date_format='yyyy-mm-dd';

修改后,可以用我们熟悉的格式添加日期类型:

sql>insertinto Students values(1,'Mike','','1993-08-01',1232.22);

 

2、插入部分字段

sql>insertinto Students(stuId,stuName,stuGender) values(1,'Tom','');

 

3、插入空值

sql>insertinto Students(stuId,stuName,stuGender,stuBirthday) values(1,'Tom','',null);

 

六、修改数据

1、改一个字段

sql>updateStudents set stuGender=''where stuId = 2;

 

2、修改多个字段

sql>updateStudents set stuGender='',stuBirthday='09-3-1992' wherestuId = 3;

 

3、修改含有null值的数据

sql>update Students set stuGender='' where stuBirthday is null;

 

七、删除数据

1delete from Students;

说明:删除所有记录,表结构还在,写日志,可以恢复的,速度慢。

 

2drop table Students;

说明:删除表的结构和数据。

 

3truncate table Students;

说明:删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快。

 

七、设置还原点和回滚到还原点

1、设置还原点

sql>savepoint a;

 

2、回滚到还原点

sql>rollbackto a;

 

http://www.cnblogs.com/BeautyOfCode/archive/2010/09/15/1826575.html

posted @ 2015-04-08 10:59  门罗的魔术师  阅读(100)  评论(0编辑  收藏  举报