Oracle 表操作

表存储在表空间中

是二维结构(行,列)

约定;

1.每一列数据类型需相同

2.列名唯一

3.每行数据唯一

数据类型:

n表示长度

字符型:定长 shar,(n=2000) nchar(n=1000), 不定长 vachar2(n=4000).nvachar2(n=2000适合存储中文数据)

数值型:number(p有效数字, s小数点后位数,正数表示最低有效数字位数, 负数表示最大有效数字到小数点位数), float(n)

日期型: date(秒), timestamp(小数秒) 

使用sysdate可获取当前日期,格式化的时间

其他:存放大数据 blob(4G的数据, 二进制类型), clob(4G数据, 字符串类型存放) 


创建表:

CREATE TABLE table_name(column_name datatype, ......);

查看表结构

DESC table_name;

修改表结构:

添加字段

ALTER TABLE table_name ADD column_name datatype;

修改字段类型

ALTER TABLE table_name MODIFY column_name datatype;

删除字段

ALTER TABLE table_name DROP COLUMN column_name;

修改字段名

ALTER TABLE table_name RENAME COLUMN column_name TO new_column_name;

修改表名

RENAME table_name TO new_table_name;

删除表

删除数据不删除表,速度比较快

TRUNCATE TABLE table_name;

删除数据和表

DROP TABLE table_name;


操作表数据

添加数据

INSERT INTO table_name (column1, column2 ... ) VALUES (value1, value2.....);

添加默认值

CREATE TABLE table_name (column1  DEFAULT value);

ALTER TABLE table_name MODIFY column DEFAULT value;

有了默认值的表,添加数据的时候table_name之后的指定字段不可省略

复制表数据

建表时复制

CREATE TABLE table_new AS SELECT column1, ... |* FROM table_old;

添加数据时复制

INSERT INTO table_new [(column1, ...)] SELECT column1,....|*FROM table_old;

修改数据

UPDATE table_name SET  column1=value1,... WHERE ...

删除数据

DELETE FROM table_name WHERE ...

 

约束

查询某张表的约束

desc user_constraints(数据字典)

SELECT CONSTRAINT_NAME FROM USER_CONSTRAINS WHERE TABLE_NAME='table_name';

非空约束

创建表时

CREATE TABLE table_name (column_name datatype NOT NULL, ....);

修改表时

ALTER TABLE table_name MODIFY column_name datatyPe NOT NULL;

主键约束

可由多个字段组成,称为联合主键

CREATE TABLE table_name (column1 datatype PRIMARY KEY, ...);

联合约束, 表级约束,在所有字段创建结束后创建

CONSTRAINT constraint_name(约束名) PRIMARY KEY (column1, ...)

修改表时添加主键

均是在 ALTER TABLE table_name 语句后使用

ALTER TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column1, ...);

更改主键名称

RENAME CONSTRAINT old_name TO new_name;

删除主键

禁用|启用主键

DISABLE|ENABLE CONSTRAINT constraint_name

删除

DROP CONSTRAINT constraint_name;

DROP PRIMARY KEY [CASCADE(用于级联删除)];


检查约束

使数据更有实际意义

创建表时设置

CREATE TABLE table_name (cokumn_name datatype CHECK(expressions), );

create table userinfo (id varchar2(10 ) primary key, salary number(5, 0) check (salary>0));

在创建完表所有字段后使用

CONSTRAINT  constraint_name CHECK (expressions);

修改表时添加检查约束

ADD CONSTRAINT constraint_name CHECK (expressions);

删除检查约束

DISABLE|ENABLE CONSTRAINT constraint_name;

DROP CONSTRAINT constraint_name;


总结:

非空约束只能在列级约束 不能再表级添加 并且没有名字

更改约束名称

使用数据字典(user_constraints)查看

RENAME CONSTRAINT old_name TO new_name;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值