Oeacle 表的管理

 

1建表

语法:

Create table 表名(

字段1     数据类型       [default 默认值],

字段2     数据类型       [default 默认值],

...

字段n    数据类型       [default 默认值]

);

范例:创建person表

create table person(

       pid      number(10),

       name     varchar2(10),

       gender   number(1default 1,

       birthday date

);

insert into person(pid, name, gender, birthday)

values(1, '张三', 1, to_date('1999-12-22', 'yyyy-MM-dd'));

2.表删除

语法:DROP TABLE 表名

3.表的修改

在sql中使用alter可以修改表

  • 添加语法:ALTER TABLE 表名称 ADD(列名1 类型 [DEFAULT 默认值],列名1 类型 [DEFAULT 默认值]...)
  • 修改语法:ALTER TABLE 表名称 MODIFY(列名1 类型 [DEFAULT 默认值],列名1 类型 [DEFAULT 默认值]...)
  • 修改列名: ALTER TABLE 表名称 RENAME COLUMN 列名1 TO 列名2

范例:在person表中增加列address

alter table person add(address varchar2(10));

范例:把person表的address列的长度修改成20长度

alter table person modify(address varchar2(20));

4.截断表

在person表中使用delete语句删除数据,则可以使用rollback来回滚,如果想要清空一张表的数据,同时不想回滚可以立即释放资源需要使用截断表的语法

语法:TRUNCATE TABLE 表名

范例:截断person表

truncate table person;

5.数据库表数据的更新

1.INSERT(增加)

语法:

INSERT  INTO表名[(列名1,列名2,...)]VALUES(值1,值2,...)

标准写法

简单写法(不建议)

INSERT  INTO 表名VALUES(值1,值2,...)

insert into person

values(1,'张三',1,'9-5-1981','北京北七家');

注意:使用简单的写法必须按照表中的字段的顺序来插入值,而且如果有为空的字段使用null

insert into person

values(2,'李四',1,null,'北京育新');

2.事务

这是因为oracle的事务对数据库的变更的处理,我们必须做提交事务才能让数据真正的插入到数据库中,在同样在执行完数据库变更的操作后还可以把事务进行回滚,这样就不会插入到数据库。如果事务提交后则不可以再回滚。

提交:commit

回滚:rollback

 

1.事务保存点与回滚:

语法:

savepoint  保存点名字

示例:

savepoint a1;    --设置一个保存点 a1;

update person set name='张三' where pid='101'  --修改一条数据

savepoint a2;   --设置一个保存点 a1;

update tmp set name='李四' where id='102  --再修改一条数据

 

rollback to a2;   --回滚到a2 保存点。 此时在 a2 保存点之后的所有数据修改视为无效。

rollback to a1;   --这里可以再从a2保存点再回滚到a1 保存点。 此时在 a1 保存点之后的所有数据修改视为无效。

rollback;           --回滚全部。即撤消至上一次提交事务后的所有数据修改。

commit;  --提交事务 将回滚后的事务提交,并会删除所有保存点。

注意:我们可以从a2向前再回滚到a1 ,但无法从a1回滚到a2。也就是只能向前回滚,不能从前面的点再向后回滚! 

2.事务的隔离级别:

事务的隔离性是什么?

事务隔离级别有哪些?

Oracle支持的隔离级别是什么?

3.UPDATE(修改)

全部修改:UPDATE 表名 SET 列名1=值1,列名2=值2,....

局部修改:UPDATE 表名 SET 列名1=值1,列名2=值2,....WHERE 修改条件;

全部更新

局部更新

 

4.DELETE(删除)

语法 : DELETE FROM 表名  WHERE   删除条件;

在删除语句中如果不指定删除条件的话就会删除所有的数据

Truncate table实现数据删除

比较truncat与delete实现数据删除?

  1. delete删除的数据可以rollback,也可以闪回
  2. delete删除可能产生碎片,并且不释放空间
  3. truncate是先摧毁表结构,再重构表结构
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值