- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
事务处理数据库的主要对象
Merge语句:
根据条件在表中执行修改或插入数据的功能,如果插入的数据行在目的表中存在就执行UPDATE,如果是不存在则执行INSERT:
-避免了单独的修改
-增强性能和应用性
-在数据仓库应用程序中尤为有用
create table inventory(part_no int,part_count int);
create table shipment(part_no int,part_count int);
insert into inventory values(1,5);
insert into shipment values(1,2);
merge语句:↓
merge into inventory
using shipment
on(inventory.part_no=shipment.part_no)
when matched then
update set inventory.part_count=shipment.part_count
when not matched then
insert values(shipment.part_no,shipment.part_count);
关于事务:
Oracle只要写入SQL语句就会默认开启事务;
关闭(结束事务):
1.commit;提交;
Rollback;退回没有操作的状态—回滚;
Savepoint;保存点;
//使回滚时,保存点以前的将会被保存;
Insert into values…
Savepoint und;//保存点的名字可随便取;
Insert into values…
Rollback to und;
回退到保存点;
2.DDL or DCL 语句
3.用户从SQL*PLUS中正常退出
//当上述情况发生时事务自动提交:
4.某些错误,用户从SQL*PLUS中强行退出;
5.系统崩溃
//事务自动回滚
SQL Sever 需要手动开启;
Sqlplus的自动提交
SQL show autocommit;
autocommit OFF
SQL set autocommit on
SQL insert into t values (1,default);//会自动提交;
已创建 1 行。
提交完成。
数据库的主要对象:
使用子查询创建表
EG:
create table seach
as
select ename,deptno,sal from emp,salgrade where
emp.empno=salgrade.empno;
ALTER TABLE 语句
Create drop alter;//DDL对表进行操作
Insert select update delete;//DML对表中的内容进行操作;
增加:
ALTER TABLE TAB2;
ADD ( 属性名,类型); //新的字段只能被加到整个表的最后给表增加属性;
修改:
ALTER TABLE TAB2;
MODIFY(属性名不变,类型);//给表中某一属性修改类型;
//当表中属性不为空的时候就不能进行修改了;
删除:
ALTER TABLE TAB2;
Drop column ( 属性名);//删除表中某一个属性;
TRUNCATE TABLE 语句
清除表中所有的记录
是DDL语句,不可以回滚
释放表的存储空间
TRUNCATE TABLE table_name;//删除了就不能恢复了
重命名表名:
RENAME old_name TO new_name;
数据字典分类
主要有三种字典视图:
往往以下列开头:
DBA:所有方案包含的对象信息
ALL:用户可以访问的对象信息
USER:用户方案的对象信息
关于约束:
约束是在表上强制执行的数据校验规则.
当表中数据有相互依赖性时,可以保护相关的数据不被删除.
Oracle 支持下面五类完整性约束:
NOT NULL 非空
UNIQUE Key 唯一键
PRIMARY KEY 主键
FOREIGN KEY 外键
CHECK 检察
不约束时:
查看:是否被约束:
Desc user_constraints;
Select …from…;
-----------------------------------------------------
Create table test(id number,age number);
Insert into test(age) values (20);
约束时:
如果仍像上面那样运行:会报错;
正确应该是:
1.NOT NULL 非空:
Create table test(id number not null,age number);
也可
文档评论(0)