我是用BDE连接的数据库,在form中放控件:datasource1,Query1,dbgrid1
Query1的databaseName为我的BDE数据库(test)
datasource1的dataset为Query1
dbgrid1的datasource为datasource1在我执行Query1.delete时有时会出现提示"Table is read only"(运行可执行文件)
请问各位高手,到底是什么原因?为什么是有时出现有时又可以执行呢?

解决方案 »

  1.   

    检查表的READONLY、EXCLUSIVE属性;确保表在删除时只有一用户。
      

  2.   

    query的requestlive设为true,另外query中的查询语句不能是多表,或者有order、having等语句
      

  3.   

    你添加一个updateSQL1控件,
    query.REQUESTLIVE设成true
    query.CachedUpdates也设置成true
    再把query.updateobject选上刚加上的update1
    query.active:=true
    然后用 DM.MF_Query.ApplyUpdates;
       DM.MF_Query.CommitUpdates;
    进行提交了