启动一个事务处理。仅对数据库中的表支持事务处理。有关如何在数据库中创建和增加表的详细信息,请参阅 CREATE DATABASE 和 ADD TABLE 。
语法
BEGIN TRANSACTION
说明
为了保存所做的修改并终止事务处理,应发出 END TRANSACTION 命令。如果事务处理失败(如服务器有故障或工作站有故障,以及没有提交事务处理就退出 Visual FoxPro),或者用户发出 ROLLBACK 命令,事务处理中的文件就恢复成原状态。
事务处理最深可嵌套五层,如果要进行第六层嵌套,则产生错误。
当修改一个数据库的记录,而该数据库又是事务处理的一部分时,网络上的其他用户在您终止事务处理之前无法访问(读或写)这些记录。
如果网络上的其他用户要访问您已经修改的记录,就必须等待您终止事务处理。在记录可用之前,用户将一直收到“记录不可用...请等待”的消息。因此,减小事务处理长度或在其他用户不需要访问期间进行事务处理就变得非常重要。
在事务处理期间不支持下列命令和函数:
| 命令和函数 | |
| ADD TABLE | DELETE CONNECTION |
| APPEND PROCEDURES | DELETE DATABASE |
| CLEAR ALL | DELETE TRIGGER |
| CLOSE ALL1 | DELETE VIEW |
| CLOSE DATABASES1 | MODIFY CONNECTION |
| COPY INDEXES | MODIFY DATABASE |
| COPY PROCEDURES | MODIFY PROCEDURE |
| CREATE CONNECTION | MODIFY VIEW |
| CREATE DATABASE | REMOVE TABLE |
| CREATE TRIGGER | RENAME TABLE |
| CREATE VIEW | REQUERY( ) |
| CREATE SQL VIEW |
| 命令和函数 | |
| ALTER TABLE | MODIFY STRUCTURE |
| CREATE TABLE | PACK |
| CURSORSETPROP( ) | REINDEX |
| DELETE TAG | TABLEREVERT( ) |
| INDEX | ZAP |
| INSERT |