Oracle基础知识,表、表字段、约束的增删改查实例

Oracle数据库:表与约束的增删改查操作指南
本文介绍了Oracle数据库的基础知识,包括如何进行数据库操作、表的操作如创建、插入数据、修改表结构及添加备注,以及详细阐述了约束的创建、修改和删除方法。提供了创建约束的最佳实践,以帮助读者更好地管理和维护数据库。

oracle基础学习

  1. ed :打开文件编辑sql。
  2. exec dbms_xdb_config.sethttpport(5501); 修改dbms的连接端口
  3. show con_name; 显示当前连接名称
  4. show pdbs; 显示当前有的pdbs容器
  5. select name from V$database; 显示当前连接的数据库
  6. select instance_name from instance; 显示当前的实例名
  7. alter session set container = orclpdb; 修改当前的容器

数据库操作

//创建一个用户名为c##huqi密码为TIGER的新用户,
create user c##huqi identified by TIGER account unlock;
//给该用户赋权
Grant DBA to c##huqi;
Grant sysoper to c##huqi;

表操作

创建表
create user c##huqi identified by TIGER account unlock;
Grant DBA to c##huqi;
Grant sysoper to c##huqi;
Create table menber (
mid number(5),
name varchar2(50) default '不详',
age number(3),
birthday date default SYSDATE,
note clob -- clob用于存放海量文字
);
向表中插入数据
Create table menber (
mid number(5),
name varchar2(50) default '不详',
age number(3),
birthday date default SYSDATE,
note clob -- clob用于存放海量文字
);

插入所有字段的对应数据

insert into menber values(1,'张三',22,SYSDate,NULL);

插入对应字段的对应数据

insert into menber(mid,age) values(2,22);

拷贝插入:创建一个新表,并且将A表的结构、数据拷贝给新表,如果想仅仅是结构,加where 1=2;

create table newMenber as (select * from menber)

拷贝插入:将B表的数据查询后拷贝给A表

insert into menber (select * from newMenber); 

显示当前连接的名称

show con_name

表重命名 旧名 to 新名

rename menber to newMenber;

删除表结构,并且自动删除数据,属于DDL

drop table menber; 

删除(截断)表数据,因不做日志记录,所以效率高于delete,但删除后不能恢复,也属于DDL

truncate table menber; 

删除表数据,效率低于truncate,属于DML

delete from menber; 

修改表结构

增加字段

alter table menber add (sex varchar(4) default '男' );

修改字段

alter table menber modify(sex varchar2(4) default '女');

删除某字段

alter table menber drop column sex;
添加备注

给表添加备注

comment on table menber is '这是给表加的一个备注';

给表中字段增加备注

comment on column menber.sex is '这是给表的性别字段加的一个备注';

约束

修改表,增加约束(不推荐)
alter table  menber  modify (mid number(20) unique);
alter table  menber  modify (name varchar2(50) not null);
insert into menber 
alter table menber add primary key(mid,name);
修改表,增加约束(推荐)
alter table mytest2 add constraint pk_ID primary key(T_ID);
创建表时创建约束方法
create table mytest(
t_id number(2) primary key,
name varchar2(20) not null
);
comment on table mytest is '这是我一个测试';
comment on column mytest.t_id is '这是一个主键';

推荐创建约束方式,便于删除

create table mytest2(
t_id number(2),
name varchar2(20),
age number(3),
CONSTRAINT uk_age UNIQUE (age),
constraint pk_id primary key (t_id,name)
);

查看所有表的约束

select constraint_name,constraint_type,table_name from user_constraints;

查看mytest2的表的约束,注意 需要区分大小写(最开始我就是小写没有查出数据)

select constraint_name,constraint_type,table_name from user_constraints where table_name = 'MYTEST2';

删除约束

alter table mytest2 drop constraint PK_ID
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值