资源描述:
《数据操纵语言与事务处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据操纵语言与事务处理数据操纵语言(DML)包括:insert,delete,update分别完成对数据库的增删改操作Oracle处理DML语句的结果时,以事务(transaction)为单位进行,一个事务为一个工作的逻辑单位,是一个oracle语句序列,oracle将它作为一个整体处理。在执行每一个DML语句时,所有的操作都在内存中完成,在执行完一系列DML语句后,需要决定由DML语句所作的修改,是全部或部分地保留到磁盘上,还是全部撤销,这些决定可以通过事务处理语句来完成,事务处理语句主要有三个
2、:commit,rollbacksavepoint(保留点)一、数据操纵语句完成对数据库的增删改操作,包括:Insert给表添加以行或多行数据Delete删除表中的数据Update修改表中的数据1.insert---插入数据inertinto[(columnName[,columnName,…])]values(value[mvalue….)其中:tableName为表名或视图名columnName:要插入数据的列名value要插入的值说明:如果为数值列插入数据,可直接提供数
3、据值,如果为字符串列提供数据,则必须使用单引号括起插入数据时,提供的数据必须与对应列的数据类型匹配例1INSERTINTOStudentsVALUES(10138,10101,'王一','男','26-12月-1989','计算机');例2INSERTINTOStudents(student_id,monitor_id,name,dob,sex,specialty)VALUES(10139,10101,'王二','20-12月-1989','男','计算机');例3INSERTINTOTeache
4、rs(teacher_id,name,department_id)VALUES(10138,'张三',101);例4INSERTINTOStudents(student_id,name,dob,sex,specialty)VALUES(10140,'王三',NULL,'男','计算机');例5INSERTINTOTeachers(teacher_id,name,hire_date,department_id)VALUES(10139,'张四',DEFAULT,101);2.UPDATE---更新数
5、据UpdatesetcolumnName=value,columnName=value,..[where子句]说明:如果为数值列插入数据,可直接提供数据值,如果为字符串列提供数据,则必须使用单引号括起插入数据时,提供的数据必须与对应列的数据类型匹配如果不指定where子句,则修改所有行的数据;如果指定where子句,则只修改满足条件的行的数据。例6UPDATEStudentsSETstudent_id=10198WHEREstudent_id=10138;例7UPDATESt
6、udentsSETspecialty='计算机应用'WHEREspecialty='计算机';例8UPDATEStudentsSETdob='16-2月-1989'WHEREstudent_id=10198;例9UPDATEStudentsSETspecialty=NULLWHEREstudent_id=10198;例10UPDATETeachersSEThire_date=DEFAULTWHEREteacher_id=11111;例11UPDATETeachersSETwage=1.1*wage
7、,bonus=bonus+100WHEREtitle='教授';3.DELETE,TRUNCATETABLE---删除数据3.1.delete-----删除数据Deletefrom[where子句]说明:当没有where子句时,删除表中所有行;反之,只删除满足条件的行3.2.truncat-----快速删除数据truncatetable1.DELETE语句格式及说明例12DELETEFROMstudents_grade;例13DELETEFROMStud
8、entsWHEREspecialty='计算机应用';2.TRUNCATETABLE例14TRUNCATETABLETeachers;4.数据库完整性使用DML语句时,经常出现违反数据完整性约束的情况,为此,需要进行完整性约束,确保进入数据库的数据的准确性。数据完整性包括3个方面的约束规则:实体完整性参照完整性自定义完整性4。.1。实体完整性实体完整性是指关系的主属性,即表的主键不能为null,且唯一4。.2。参照完整性参照完整性指具有主从关系的两个表之间的约束关系:如tacher