表:表都存放在我们ORACLE里面的表空间里面,表示存储数据的最基本的存储单位,我们需要把我们数据都存放在我们表当中。在ORACLE当中我们的表都是二维结构,它是由行和列组成的。横向就是行,纵向就是列
一行:记录
一列:域或者字段
约定:1 每一列的数据必须具有相同的数据类型
2 列名唯一
3 每一行的数据唯一性
数据类型:
字符型:CHAR(n)、NCHAR(n) 这两种都是固定长度的类型 假设n=10
· 我们只设置了3个字符,那么会给我们补充7个空格
NCHAR(n)是根据Unicode存放数据的,通常情况下 CHAR(n) n的最大值是2000 NCHAR(n) n的最大值是1000
一般情况下我们用NCHAR(n)存储汉字比较多的
VARCHAR2(n)、NVARCHAR2(n) 这是可变长度 varchar节省空间 N是支持UNICODE N分别是4000和2000
数值型
NUMBER(p,s) p是有效数字,s是小数点后面的位数,也可以理解为范围
s的值是正数,表示小数点到最低有效数字的位数,s是负值就表示最大有效数字到小数点的位数
FLOAT(n) 用于存储二进制 他能表示的二进制位数是1-126位 将这个二进制数转换成10进制数就需要将这个数乘以0.30103
同常我们都是用NUMBER类型
日期型
DATE类型 公元前4712年1月1号到公元9999年12月31号 精确到秒
更精确:TIMESTAP精确到小数秒
一般情况下我们都是用DATE
其他类型(存放大对象的数据) BLOB 4G数据 二进制形式存放的数据
CLOB 4G数据 是以字符串形式存放的
创建表:CREATE TABLE table_name
(
column_name datatype,...
);
注:同一个用户下表名要是唯一的
举例:创建用户信息表
create table userinfo
(id number(6,0),
username varchar2(20),
userpwd varchar2(20),
email varchar2(30),
regdate date);
desc userinfo
查看表结构:DESC userinfo
修改表:(这里的修改表指的是表结构不是表数据)
添加字段:ALTER TABLE table_name ADD column_name datatype;
举例:ALETER TABLE userinfo ADD remarks varchars2(500);
更改字段数据类型:ALTER TABLE table_name MODIFY column_name datatype;
举例:ALTER TABLE userinfo MODIFY remarks varchars2(400);
如果我们一个表中存放了很多数据我们就不能够对它进行修改了
举例:ALTER TABLE userinfo MODIFY userpwd number(6,0);
删除字段:ALTER TABLE table_name DROP COLUMN column_name;
举例:ALTER TABLE userinfo DROP COLUMN remarks;
修改字段名:ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;
举例:ALTER TABLE userinfo RENAME COLUMN email TO new_email; 只是改名,对数据类型不编
修改表名:RENAME table_name TO new_table_name;
举例:RENAME userinfo TO new_userinfo;
删除表数据:TRUNCATE TABLE table_name; 这种形式是删除表中给的全部数据,并不是将表删除掉,也叫做截断表
这种删除表中的数据,比DELETE要快很多
举例:TRUNCATE table new_userinfo;
删除表:DROP TABLE table_name;同时删除表结构表数据