欢迎来到天天文库
浏览记录
ID:59403043
大小:73.50 KB
页数:5页
时间:2020-05-28
《事务处理数据库的主要对象.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Merge语句:根据条件在表中执行修改或插入数据的功能,如果插入的数据行在目的表中存在就执行UPDATE,如果是不存在则执行INSERT:-避免了单独的修改■增强性能和应用性-在数据仓库应用程序中尤为有用createtableinventory(part_noint,part_countint);createtableshipment(part_noint9part_countint);insertintoinventoryvalues(1,5);insertintoshipmentvalues(l,2);merge语句:Imergeint
2、oinventoryusingshipmenton(inventory.part_no=shipment.part_no)whenmatchedthenupdatesetinventory.part_count=shipment.part_countwhennotmatchedtheninsertvalues(shipment.part_no,shipment>part_count);关于事务:Oracle只要写入SQL语句就会默认开启事务;关闭(结束事务):1.commit;提交;Rollback;退回没有操作的状态一回滚;Savepoi
3、nt;保存点;〃使回滚时,保存点以前的将会被保存;Insertintovalues...Savepointund;〃保存点的名字可随便取;Insertintovalues...Rollbacktound;回退到保存点;2.DDLorDCL语句3.用户从SQL*PLUS中正常退出〃当上述情况发生时事务自动提交:4.某些错误,用户从SQL*PLUS中强行退出;5.系统崩溃〃事务自动网滚SQLSever需要手动开启;Sqlplus的自动提交SQL>showautocommit;autocommitOFFSQL>setautocommitonSQL
4、>insertintotvalues(1,default);//会自动提交;巳创建1行。提交完成。数据库的主要对象:对象名称描述表基本的数据存储对象,以行和列的形式存在,列也就是字段,行也就是记录数据字典也就是系统表,存放数据库相关信息的表约束条件执行数据校验,保证了数据完整性的视图一个或者多个表数据的逻辑显示索引用于提高杏河的性能同义词对象的别名使用子查询创建表EG:createtableseachasselectename,deptno,salfromemp,salgradewhereemp.empno=salgrade.empno;A
5、LTERTABLE语句Createdropalter;//DDL对表进行操作Insertselectupdatedelete;//DML对表中的内容进行操作;增加:ALTERTABLETAB2;ADD(属性名,类型);〃新的字段只能被加到整个表的最后给表增加属性;修改:ALTERTABLETAB2;MODIFY(属性名不变,类型);〃给表中某一属性修改类型;〃当表中属性不为空的时候就不能进行修改了;删除:ALTERTABLETAB2;Dropcolumn(属性名);//删除表中某一个属性;TRUNCATETABLE语句•清除表中所有的记录•
6、是DDL语句,不可以回滚•释放表的存储空间TRUNCATETABLEtable_name;〃删除了就不能恢复了重命名表名:RENAMEoldnameTOnewname;•数据字典分类.•主要有三种字典视图:•往往以下列开头:-DBA:所有方案包含的对象信息-ALL:用户可以访问的对象信息-USER:用户方案的对象信息关于约束:•'约束W在表上强制执行的数据校验规则.•当表中数据有相互依赖性时,可以保护相关的数据不被删除.•Oracle支持下面五类完整性约束:-NOTNULL非空-UNIQUEKey唯一键-PRIMARYKEY主键-FOREI
7、GNKEY外键-CHECK检察不约束时:查看:是否被约束:Descuser_constraints;Select…from…;Createtabletest(idnumber,agenumber);Insertintotest(age)values(20);约束时:如果仍像上面那样运行:会报错;正确应该是:1.NOTNULL非空:Createtabletest(idnumbernotnull,agenumber);也可:Createtabletest(idnumberconstrainttest_unotnull,agenumber);另起
8、一行写会报错;Insertintotest(id)values(20);正确;2.UNIQUEKey唯一键:Createtabletest(idnumberunique,agen
此文档下载收益归作者所有