Oracle入门 04_01 表操作

​​​​1.1修改表结构

添加一个字段

alter table 表名  add(列名 数据类型(+约束))

修改字段名字(该字段不能有数据)

alter table 表名 rename column oldcolumn to newcolumn

修改字段类型(该字段不能有数据)

alter table 表名 modify(列名 数据类型(+约束))

修改字段长度

alter table表名 modify(列名 数据类型)

删除一个字段

alter table 表名 drop column 列名

 

修改约束

alter table tb_student

add constraint 约束名 UNIQUE(列名) --创建唯一约束

add constraint 约束名 PRIMARY KEY(列名) --创建主键约束

add constraint 约束名 FOREIGN KEY(列名) REFERENCES t_class(class_id) --创建外键约束

add constraint 约束名 CHECK(age>0 AND age<150) --创建检查约束 in('男',‘女’) 

修改默认值约束

alter table 表名 modify 列名 default sysdate

删除指定的约束

alter table 表名   drop constraint ck_age --ck_age为约束名

这是因为如果两张表存在主从关系,那么,在删除主表的主键约束时,必须带上cascade选项

alter table 表名 drop primary key cascade;

查看约束

查看T_STUDENT表中所有约束。注意:表名必须全部大写

SELECT * FROM user_constraints --该表用于存放用户所建表的约束

WHERE table_name = TB_STUDENT

1.2修改表名

rename oldtablename to newtablename​​​​​​

  1. 3复制表
    1. 3.1复制表结构及数据

--将emp表中的数据插入到tb_new表中(tb_new表要先创建,而且表结构与SELECT的结果集相同)

INSERT INTO tb_new SELECT * FROM emp

--复制emp表

CREATE TABLE tb_new AS SELECT * FROM emp

  1. 3.2只复制表结构,不复制数据

CREATE TABLE tb_new AS SELECT * FROM emp WHERE 1=2 --boolean表达式,条件为false即可

  1. ​​​​3.3复制满足条件的记录

CREATE TABLE tb_new AS SELECT * FROM emp WHERE deptno=30

  1. 4表数据操作
    1. 4.1插入数据

insert into tb_student values(2, '李四’,'男’,'1-1月-09', 1100);

注意:Oracle中默认的日期格式为 DD-MM-YYYY

该日期的默认格式:

to_date('2017-1-1', 'YYYY-MM-DD') alter session set nls_date_format = yyyy-mm-dd;

修改后就可以按照熟悉的格式插入数据了

insert into tb_student values(3, 李四, , 2000-10-19, 1100);

插入空值,字段值为null

insert into tb_student values(2, 李四, , 2000-10-19, 1, null)

注意:日期型数据的插入

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@insist123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值