oracle创建、删除、修改表

表的创建、修改、删除

1.用于操纵表的DDL语言命令有:create table(创建)、alter table(修改表)、drop table(删除表)、truncate table(截断表)

  • 1)创建表
    create table <表名>
    tablespace <表空间名称> 将表创建到哪个表中
    在这里插入图片描述
create table dw1.student //创建表
(
 sno varchar2(3) not null, //约束sno一列取值不为空
 sname varchar2(8) not null,
 ssex carchar2(2) not null,
 degree number(4,1), //成绩字段数值类型
 sbirthday date,
 class varchar2(5),
 constraint pk_dw_doctor primary key(ysbm), 
 //定义主键,(ysbm)主键字段,primary key主键
 constraint fk_dw_doctor_ksbm foreign key (ksbm) references dw.dept(ksbm),
 //定义外键,foreign key外键,从哪里引用references
 check(xb = '1' or xb = '2')
 //用来检测一列的取值范围
)
tablespace TS_DW; //指定表的默认表空间
//not null只能作为列级约束
  • 2)修改表
    通过alter table命令来实现可以对基本表的表结构进行更改,包括添加一行,删除一行,更改列的长度
    语法规则
alter table tablename ADD/MODIFY/DROP DOLUMN/coloumnname[definition];
//add增加,modify修改,drop删除
alter table dw.doctor add tablename varchar2(10);
//在doctor中增加一个表,tablename(新列名称)
alter table dw.doctor drop column name;
//从表中删除列名称,drop后必须加column+列名称
alter table dw.doctor modify name varchar2(100);
//将表中的name字段改为长度为100的字段,只能改大不能改小
alter table dw1.student add constraint student_id_pk primary key (sno);
//add增加,primary主键,添加主键student_id_pk,主键字段(sno)
alter table dw1.student
add constraint dw_wj_sno foreign key (sno) references dw1.score(sno);
//添加外键,通过foreign添加,引用自references dw1.score(sno)
  • 3)删除约束
alter table dw.student drop constraint dw_gen_1_kscj;
//通过drop删除,后+约束名称

当某个基本表不需要的时候,可以使用drop table删除

//删除表结构和表记录【限制删除|级联删除】
drop table <表名> [restrict|cascade]

该语句将删除表结构及表中记录,所以小心使用!!!

  • 4)截断表
    一般用于删除表中所有数据,但是要保留表结构
    当需要删除表中所有数据是,可以使用truncate对表进行截断
    在截断表时,表中包含的所有行都将被删除,但表本省会被保留,就是列依然存在,只是其中没有存储值
    truncate能达到删除数据的目的,速度比delete快,但是无法rollback(恢复)
truncate table <表名>;
//删除
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle中,创建的语句可以使用"create table"命令。例如,下面是一个创建名为"student_info"的的示例语句: create table scott.student_info ( sno number(10) constraint pk_si_sno primary key, sname varchar2(10), sex varchar2(2), create_date date ); 在这个示例中,"scott"是的属主,"student_info"是的名称。中包含了四个列,分别是"sno"、"sname"、"sex"和"create_date"。其中,"sno"列是主键列,它的数据类型是number(10),"sname"和"sex"列的数据类型是varchar2(10)和varchar2(2),"create_date"列的数据类型是date。 此外,还可以使用"comment on"命令为和列添加注释。例如: comment on table scott.student_info is '学生信息'; comment on column scott.student_info.sno is '学号'; comment on column scott.student_info.sname is '姓名'; comment on column scott.student_info.sex is '性别'; comment on column scott.student_info.create_date is '创建日期'; 这些注释可以提供关于和列的额外说明信息。 请注意,创建和添加注释的操作需要相应的权限。可以使用"grant"命令为其他用户授予对的访问权限。例如: grant select, insert, update, delete on scott.student_info to hr; 这样,用户"hr"就被授予了对"scott.student_info"的查询、插入、更新和删除的权限。 除了创建,还可以使用"alter table"命令对进行修改。例如,可以使用"alter table"命令添加、修改删除的列。具体的语法和示例可以参考引用\[2\]中的内容。 另外,如果需要查询、列和备注信息,可以使用相应的查询语句。例如,可以使用"select"语句查询的信息和备注信息,可以参考引用\[3\]中的示例。 #### 引用[.reference_title] - *1* *2* *3* [Oracle 创建语句](https://blog.csdn.net/KevinChen2019/article/details/126758741)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值