欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-07-07 22:18:41
最近闲来无聊加上出外面试遇到了一些数据库问题,就想起学习下oracle数据库,数据库在基础上感觉就是一个范式,所谓一通百通,之前学习了mysql,现在学习oracle感觉毫无压力,...

最近闲来无聊加上出外面试遇到了一些数据库问题,就想起学习下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;。