在vf中在哪个地方使用事物控制语句commit,是直接编程使用吗?

6

当要对数据库进行多个操作时使用
vfp自己的事务处理语句有:
begin transaction
rollback
end transaction

你说的commit是sql命令, 是操作sql server数据库用的, 当使用SQL Pass-Through时, 用sqlexec()函数直接给sql数据库发送命令.详细说明:

应用程序主要通过指定事务启动和结束的时间来控制事务。这可以使用 Transact-SQL 语句或数据库 API 函数。系统还必须能够正确处理那些在事务完成之前便终止事务的错误。

事务是在连接层进行管理。当事务在一个连接上启动时,在该连接上执行的所有的 Transact-SQL 语句在该事务结束之前都是该事务的一部分。

启动事务

在 Microsoft® SQL Server™ 中,可以按显式、自动提交或隐性模式启动事务。

显式事务

通过发出 BEGIN TRANSACTION 语句显式启动事务。

自动提交事务

这是 SQL Server 的默认模式。每个单独的 Transact-SQL
语句都在其完成后提交。不必指定任何语句控制事务。

隐性事务

通过 API 函数或 Transact-SQL SET IMPLICIT_TRANSACTIONS ON 语句,将隐性事务模式设置为打开。下一个语句自动启动一个新事务。当该事务完成时,再下一个 Transact-SQL
语句又将启动一个新事务。

连接模式在连接层进行管理。如果一个连接从一种事务模式改变到另一种,那么它对任何其它连接的事务模式没有影响。

结束事务

可以使用 COMMIT 或 ROLLBACK 语句结束事务。

COMMIT

如果事务成功,则提交。COMMIT 语句保证事务的所有修改在数据库中都永久有效。COMMIT 语句还释放资源,如事务使用的锁。

ROLLBACK

如果事务中出现错误,或者用户决定取消事务,可回滚该事务。ROLLBACK 语句通过将数据返回到它在事务开始时所处的状态,来恢复在该事务中所作的所有修改。ROLLBACK
还会释放由事务占用的资源。
温馨提示:答案为网友推荐,仅供参考
相似回答