表
1 表存放在数据库的表空间中,是数据的基本的存储单位,Oracle数据库中的表是二维结构,由行(记录)和列(域|字段)组成。
2 表的约定:
每一列的数据必须具有相同的数据类型
列名唯一
每一行的数据的唯一性
3 数据类型:
字符型
固定长度:
char(n max2000 )
nchar(n max1000)
注:char支持的最大字符长度位2000,nchar支持最大字符长度位1000,
nchar是以unicode格式存放数据的,一般用来存放汉字较多。
可变长度:
varchar2(n)
nvarchar2(n)
数值型
number(p,s) p:有效数字 s:小数点后的位数(正数)
float(n) 用于存储2进制数字,1-126位 2-10 乘0.30103
日期型
DATE
范围:公元前4712年1月1日至公元9999年12月31日可精确到秒。
TIMESTAMP
时间戳类型,精确到小数秒。
其他型(存放大对象的数据)
BLOB 存放4GB 二进制形式存放
CLOB 存放4GB 字符串类型存放
4 管理表
查看表结构 desc table_name
创建表
CREATE TABLE table_name(column_name datatype,...)
修改表的结构
添加字段 ALTER TABLE table_name ADD column_namedatatype
修改字段数据类型、长度(表中为空)
ALTER TABLE table_name MODIFY column_name datatype
删除字段 ALTER TABLE table_name DROP COLUMNcolumn_name
修改字段名称
ALTER TABLE table_name
RENAME COLUMN column_name TO new_column_name
修改表名 RENAME table_name tonew_table_name
5 删除表
TRUNCATE TABLE table_name 只删除表中的数据,截断表,比delete速度快。
DROP TABLE table_name 删除整个表结构(包含表中的数据)。
6 操作表中的数据
添加数据
INSERT INTO FROM table_name(column1,column2,...)values(value1,value2,...)
复制表数据
1、在建表时将原表的数据以及表结构复制到新建表中(table_new为未创建的表)
CREATE TABLE table_new AS SELECT column1,... | * FROM table_old;
2、在添加时复制(table_new必须为已创建的表)
INSERT INTOtable_new[(column1,...)] SELECT column1,...|* from table_old;
修改数据
UPDATE table_name SET column1=value1,... [WHEREconditions];
删除数据(在Oracle数据库中以行为单位删除数据,不针对某一列)
DELETE FROM table_name [WHEREconditions];