oracle学习之-----------数据库建表、增删改查操作

  • 2022-07-07 22:18:41

最近闲来无聊加上出外面试遇到了一些数据库问题,就想起学习下oracle数据库,数据库在基础上感觉就是一个范式,所谓一通百通,之前学习了mysql,现在学习oracle感觉毫无压力,现在将一些东西给大家分享下,希望对大家有用户吧。

一、建表

【语法】

CREATE TABLE (

column1 DATATYPE [NOT NULL] [PRIMARY KEY],

column2 DATATYPE [NOT NULL],

...

[constraint <约束名> 约束类型 (要约束的字段)

【说明】

DATATYPE --是Oracle的数据类型

NUT NULL --可不可以允许资料有空的(尚未有资料填入)

PRIMARY KEY --是本表的主键

constraint --是对表里的字段添加约束.(约束类型有

Check,Unique,Primary key,not null,Foreign key);

数据库建表语法完全是一个套路,完全就是create table+表名称然后一个小括号里写上自己规定的字段名字、字段类型(以及类型长度)等等,示例

   create table t_student(
        s_id number(8) PRIMARY KEY,
        s_name varchar2(20) not null,
        s_sex varchar2(8),
        clsid number(8),
        constraint u_1 unique(s_name),
        constraint c_1 check (s_sex in ('MALE','FEMALE'))
   );

--从现有的表创建表及复制其数据

【语法】

CREATE TABLE <table_name> as <SELECT 语句>

【示例】(从oracle的scott用户复制emp表数据到当前用户,本人新建的用户为hr)

createtable emp as select*from scott.emp;

当然该语法中加上where1=2;的条件出现的结果就是只复制表结构而不会复制表中的数据。

由于时间紧迫就不写语法说明了,

增加字段:

alter table t_student add(s_age number(3),s_address varchar2(20)); 该代码表示往 t_student 表中增加两个字段 。

修改字段:

alter table t_student modify(s_name varchar2(50),s_address varchar2(100));和类型,并不能修改字段的名称

注意:modify关键字只能修改字段的长度

删除字段:

alter table t_student drop(s_age,s_address);

修改字段的名称:

alter table t_student renamecolumn s_id to s_no;

二、删除表

drop table t_student;

该代码删除的数据库表不能算是彻底删除,因为该表还存于oracle数据库的回收站中,可通过showrecyclebin;或 select*fromrecyclebin;来查看回收站,那么要想彻底从回收站中删除数据库表则需要加上purge关键字,此时的语法为drop table t_student purge; 亦可使用清空回收站操作来清空所有的回收站的内容

--清空回收站

purgerecyclebin;。

猜你喜欢