oracle数据库crud,oracle数据库基础,初学必备

-- 单行注释

/* 多行注释 */

DDL 数据定义语言(data definition language) 对表进行操作创表语句

create table t_sstudent(

sstudent_id number(3),

sstudent_name varchar2(20),

sstudent_sex char(3),

ssudent_age number(3),

sstudent_address varchar2(50)

)

2.添加一个字段

alter table t_sstudent add sstudent_marry char(3);

3.修改字段的数据类型

alter table t_sstudent modify sstudent_marry varchar2(6);

4.修改字段的名字

alter table t_sstudent rename column sstudent_marry to sstudent_married;

5.删除字段

alter table t_sstudent drop column sstudent_married;

6.修改表的名字

rename t_sstudent to tb_sstudent;

7.删除表

drop table t_student;

DML 数据操作语言(data manipulation language) CRUD(增删改查)

insert into tb_sstudent values(4,'张大大','男',27,'湖北');

insert into tb_sstudent (sstudent_id,sstudent_name,sstudent_sex,ssudent_age,sstudent_address) values (4,'翠花','女',33,'中国');

update tb_sstudent set sstudent_name='王宝强',sstudent_sex='男' where sstudent_id=3;删除数据,不删除结构

delete tb_sstudent where sstudent_id=4;

delete tb_sstudent;

truncate table tb_sstudent;

drop delete truncate

drop table 表名 删除结构和数据 与事物无关

delete 表名 删除数据,可以是部分也可以是全部 表的结构不会删除 ,表的数据会删除 与事物无关 (可以回滚 rollback)(可以通过技术找回)

truncate table 表名 删除数据 删除整张表中所有数据不删除结构 与事物无关

truncate效率比delete高

2.磁盘高位

drop table tb_sstudent; --删除原来带有标记的表,这个表比较缓慢

3.快速备份

create table tb_sstudent_bak as select * from tb_sstudent;

4.重新命名

rename tb_sstudent_bak to tb_sstudent;

5.给字段取别名,只是当时查询的时候显示别名,它本身还是之前的名字

select sstudent_id as 学生编号,sstudent_name as 学生姓名,

sstudent_sex as 性别,ssudent_age as 年龄,sstudent_address as 地址 from tb_sstudent;

--数据库三范式 创建一张规范的表

--第一范式 数据库中表的字段具有原子性,不可再分

--第二范式 主键 每张表中必须要有一个主键,来唯一的标志这条记录

--第三范式 外键 两张表进行关联,第一张表的外键必须关联第二张表的主键

--约束:

1.主键约束:唯一 不能null

create table t_pet(

id number(3) primary key,

name varchar2(30),

age number(2)

)

insert into t_pet (id,name,age) values (1,'小可爱',2);

第二种创建主键方式

create table t_pet2(

id number(3),

name varchar2(30),

age number(2),

constraint pk_t_pet2 primary key(id)

)

insert into t_pet2 (id,name,age) values (1,'小可爱',2);

--第三种创建主键方式,表外创建

create table t_pet3(

id number(3),

name varchar2(30),

age number(2)

)

alter table t_pet3 add constraint pk_t_pet3 primary key(id); --pk_t_pet3 主键的名字

insert into t_pet3 (id,name,age) values (4,'老虎吧',-12);

2.唯一键约束 唯一 可以为null

alter table t_pet3 add constraint uk_t_pet3 unique (name);

3.检查约束

alter table t_pet3 add constraint ck_t_pet3 check(age between 0 and 50);

alter table t_pet3 drop constraint ck_t_pet3;

4.默认

alter table t_pet3 modify age default 20;

select * from t_pet3;

insert into t_pet3 (id,name) values (5,'哈士奇');

5.外键约束 可以重复 可以为null 外键必须存在于另一张表的主键中

drop table t_student;

drop table t_class;

create table t_student(

id number(3) primary key, --主键

name varchar2(30),

age number(3),

classId number(3) -- classId作为外键,关联班级

)

alter table t_student add constraint fk_t_student foreign key(classId) references t_class(id);

create table t_class(

id number(3) primary key, --主键

name varchar2(30)

)

6.快速插入数据

select * from t_student for update;

select * from t_class for update;

delete t_class where id=1;

TCL 事物控制语言 transaction control language

commit;

rollback;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值