S
supershan
Unregistered / Unconfirmed
GUEST, unregistred user!
我把ADOTABLE的Lock type 属性设为ltBatchOptimistic,并且在提交时用了
updatebatch(arall);
我想实现多台计算机同时操作一张表,用BeginTrans和CommitTrans来实现
我的代码如下:
1、TABLE的newrecord事件把单据号赋成O
2、点提交按钮过程如下:
DM.DbSource.BeginTrans;
//对数据库加锁的一个过程(就是一个简单的UPDTATE语句)
DataBaseKey;
//数据提交
DM.TblBorrowLoan.UpdateBatch(arAll)
//从库中取单据的最大号过程(MaxlistNo是我自己写的一个过程)
G_MaxNo := MaxListNo('BorrowLoan','ListNo','ListType='+#39+gBorrowLoanListKind+#39)+1;
//把最大号赋给单据号为O的记录(ListNoUpdate是我自己写的一个过程)
ListNoUpdate('BorrowLoan',gBorrowLoanListKind,G_MaxNo);
//结束事务
DM.DbSource.CommitTrans;
updatebatch(arall);
我想实现多台计算机同时操作一张表,用BeginTrans和CommitTrans来实现
我的代码如下:
1、TABLE的newrecord事件把单据号赋成O
2、点提交按钮过程如下:
DM.DbSource.BeginTrans;
//对数据库加锁的一个过程(就是一个简单的UPDTATE语句)
DataBaseKey;
//数据提交
DM.TblBorrowLoan.UpdateBatch(arAll)
//从库中取单据的最大号过程(MaxlistNo是我自己写的一个过程)
G_MaxNo := MaxListNo('BorrowLoan','ListNo','ListType='+#39+gBorrowLoanListKind+#39)+1;
//把最大号赋给单据号为O的记录(ListNoUpdate是我自己写的一个过程)
ListNoUpdate('BorrowLoan',gBorrowLoanListKind,G_MaxNo);
//结束事务
DM.DbSource.CommitTrans;