switch 语句是多分支选择语句。程序运行结果:说明:例3.12 中出现了break 语句,在C 语言中,可以利用break 语句终止该语句下面所有case 子句和default 子句的执行,直接跳出switch 语句。......
2023-10-21
所有的T-SQL语句都是内在的事务。SQL Server还包括事务处理语句,将SQL Server语句集合分组后形成单个的逻辑工作单元。事务处理语句包括:
BEGⅠN TRAN SACTⅠON语 句、COMMⅠT TRANSACTⅠON语 句、ROLLBACK TRANSACTⅠON语句和SAVE TRANSACTⅠON语句。
1.BEGⅠN TRANSACTⅠON语句
BEGⅠN TRANTSACTⅠON语句定义一个显式本地事务的起始点,即事务的开始。其语法格式为:
BEGⅠN{TRAN|TRANSACTⅠON}
[{transaction_name|@tran_name_variable}
[WⅠTH MARK[′description′]]
]
[;]
说明:
①TRANSACTⅠON关键字可以缩写为TRAN:
②transaction name是事务名,@tran_name_variable是用户定义的、含有效事务名称的变量,该变量必须是字符数据类型。
③MTH MARK指定在日志中标记事务,description是描述该标记的字符串。
2.COMMⅠT TRANSACTⅠON语句
COMMⅠT TRANSACTⅠON语句标志一个成功的隐式事务或显式事务的结束。其语法格式为:(www.chuimin.cn)
COMMⅠT{TRAN|TRANSACTⅠON}[transaction_name|@tran_name_variable]][;]
这里需要强调的是,仅当事务被引用所有数据的逻辑都正确时,T-SQL语句才能发出COMMⅠT TRANSACTⅠON命令。当在嵌套事务中使用时,内部事务的提交并不释放资源或使其修改成为永久修改。只有在提交了外部事务时,数据修改才具有永久性,而且资源才会被释放。当@@TRANCOUNT大于1时,每发出一个COMMⅠT TRANSACTⅠON命令只会使@@TRANCOUNT按1递减。当@@TRANCOUNT最终递减为0时,将提交整个外部事务。
3.ROLLBACK TRANSACTⅠON语句
ROLLBACK TRANSACTⅠON语句将显式事务或隐式事务回滚到事务的起点或事务内的某个保存点,它也标志一个事务的结束,也称为撤销事务。其语法格式如下:
ROLLBACK{TRAN|TRANSACTⅠON}
[transaction_name|@tran_name_variable
|savepoint_name|@savepoint_variable]
[;]
ROLLBACK TRANSACTⅠON清除自事务的起点或到某个保存点所做的所有数据修改。它还释放由事务控制的资源。savepoint_name是SAVE TRANSACTⅠON语句中的savepoint_name。当条件回滚只影响事务的一部分时,可使用savepoint_name。@savepoint_variable是用户定义的、包含有效保存点名称的变量的名称,必须是字符数据类型。
4.SAVE TRANSACTⅠON语句
SAVE TRANSACTⅠON语句在事务内设置保存点。其语法格式为:
SAVE{TRAN|TRANSACTⅠON}{savepoint_name|@savepoint_variable}
用户可以在事务内设置保存点或标记。保存点可以定义在按条件取消某个事务的一部分后,该事务可以返回的一个位置。如果将事务回滚到保存点,则根据需要必须完成其他剩余的T-SQL语句和COMMⅠT TRANSACTⅠON语句,或者必须通过将事务回滚到起始点完全取消事务。若要取消整个事务,请使用ROLLBACK TRANSACTⅠON transaction_name语句。这将撤销事务的所有语句和过程。savepoint_name是分配给保存点的名称。@savepoint variable包含有效保存点名称的用户定义变量的名称。
有关数据库技术与应用教程的文章
switch 语句是多分支选择语句。程序运行结果:说明:例3.12 中出现了break 语句,在C 语言中,可以利用break 语句终止该语句下面所有case 子句和default 子句的执行,直接跳出switch 语句。......
2023-10-21
Java程序可以通过JDBC向数据库发出命令,数据库管理系统获得命令后执行请求,并将执行的结果通过JDBC返回给Java程序。JDBC API是一套用Java语言编写的类库,在java.sql包中,编写与数据库相连的Java程序首先要将该包引入到程序中。使用oracle.jdbc.driver.OracleDriver驱动程序连接Oracle数据库是直连方式,效率高、速度快。它返回值的数据类型是Connection对象,Connection对象代表与数据库的连接。读取或修改数据库中的数据JDBC通过向数据库发送SQL语句完成对数据库的操作。......
2023-11-19
C 语言中提供了两个中断循环语句:break句和 continue 语句。break 句是跳出本层循环不执行,continue 语句是结束本次循环,下次循环可以继续执行。在循环语句中,break 常常和if 语句一起使用,表示当条件满足时,立即中止循环。执行continue 语句并没有使整个循环终止,注意这与break 的不同。......
2023-10-21
在此情况下,就需要用户优先考虑使用MySQL事务处理。在MySQL中,事务由单独单元的一个或多个SQL语句组成。通过InnoDB和BDB类型表,MySQL事务能够完全满足事务安全的ACID测试,但是并不是所有表类型都支持事务,如MyISAM类型表就不能支持事务,只能通过伪事务对表实现事务处理。当用户希望已经存在的表支持事务处理,则可以应用ALTER TABLE命令指定数据表的类型实现对表的类型更改操作,使原本不支持事务的数据表更改为支持事务处理的类型。......
2023-10-29
由于选课表后列出的属性与定义表时的顺序一致,该例还可以用下面的形式表达:ⅠNSERTⅠNTO选课VALUES;2.在表中插入子查询的结果集如果插入的数据需要查询才能得到,就需要使用插入子查询结果集的ⅠNSERT语句。SQL允许将查询语句嵌到数据插入语句中,以便将查询得到的结果集作为批量数据输入表中。......
2023-11-24
SQL修改数据操作语句的一般格式为:UPDATE<表名>SET<列名>=<表达式>[,<列名>=<表达式>][,……UPDATE选课SET成绩=成绩*1.2WHERE课程号=;解题说明:该例中的元组修改条件是数据库课程,而在选课表中只有课程号而无课程名。因此,要通过在课程表中查找课程名为数据库的课程号,才能确定修改的元组,所以该题的WHERE子句中使用了子查询。......
2023-11-24
单语句存储过程非常有用,但存储过程的真正功能在于它能够封装和执行多个语句。因为这两个应用程序都需要能够计算奖金数额,所以这个任务非常适合使用存储函数实现。本节余下部分主要介绍创建多语句存储过程时常用的语法。......
2023-10-29
T-SQL对SQL Server的使用非常重要,所有应用程序与SQL Server的通信都通过向服务器发送T-SQL语句来进行,是唯一能和SQL Server数据库系统进行交互的语言。......
2023-11-23
相关推荐