关于Delphi的数据库事务处理?急! 高手请进!

htxl 2001-12-13 04:10:40
我为SQL SERVER2000设置了一个新的账号:test,使它属于组Public,
并将其加入了Pubs数据库的用户列表中。
并针对账号test使其拥有对Aouthors表的读取(Select)权限,
以及对Authors表中的au_id字段进行Update的权限。

之后使用Delphi5进行测试
(Username:test, TableName:Authors,窗体上有一个TTable控件,一个DBNavigator,
一个DataSource,一个DataBase和一个DBGrid),

发现如果我对Authors表进行除au_id字段以外的Update操作,就提示一个错误:

“General SQL error. The ROLLBACK TRANSACTION request has no
corresponding BEGIN TRANSACTION.”,

忽略并继续运行后,再对Authors表
进行Update操作(例如对拥有权限的au_id字段进行Update操作),
就给出提示:

“Record already locked by this session.”。

意思是说我刚才进行Update操作的记录已别锁定。

我后将BDE改用ADO,重新进行上述操作,一起正常,当我进行没有权限的操作是
给出了一个没有操作权限的提示,这种提示是正确的。

我百思不得其解,望众网友指教。
...全文
91 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
三杯倒 2001-12-13
  • 打赏
  • 举报
回复
1111

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧