以下不保存证正确
Query用SQL语言执行过的,没有必要Cancel、Post,因为其会对数据库直接操作; 执行Update、Insert、Delete请用SQL语句;
用Table使用对当前记录直接操作,也许会有用,Cance、Post会起作用; 执行Update、Insert、Delete,可对当前记录直接操作;
Cancel、Post前请检查Modified
以前两种在Update、Insert、Delete前,先检查CanModify.且对于 Table:Table.ReadOnly, 控件的ReadOnly Query:Query.Requestlive, 控件的ReadOnly
dsInactive dsBrowse dsEdit dsInsert
delete、open、post、cancel 詷用后回来dsBrowse
在进行上述操作前一定要Close,如下: Query1.Close;
Query1.SQL.Clear; Query1.SQL.Add('Delete from Country where Name = ''Argentina'''); Query1.ExecSQL;
使用Query有两种方式 1、等待 //dbgStudentInfo.ReadOnly := False; //DMStudent.qryStudent.RequestLive := True;
并且进入相应的状态或者检查相应的状态
2、 直接Close 然后执行相应的功能。 最后通过Open刷新 总结 1.1 table (1)DBGrid的ReadOnly的设置为False; (2)Table.ReadOnly (3)检查CanModify (4)调用相应的函数进入相应的模式进行修改 1.2 Post、Cancel前先检查Modified 1.3 刷新用Open
2.1 Query (1)DBGrid的ReadOnly的设置为False; (2)Table.ReadOnly (3)检查CanModify 2.2 Post、Cancel不起任何作用。(前先检查Modified) 2.3 刷新用Open (1)Close; (2)SQL.Clear (3)SQL.Add (4)Open 2.4 修改 (1)一般要强制刷新可先调用Close; (2)SQL.Clear (3)SQL.Add (4)ExecSQL; (5)这里的操作是直接对数据库操作。
调用相应的函数进入相应的模式 --------------------- 作者:五夜一夕 来源:CSDN 原文:https://blog.csdn.net/wuyeyixi/article/details/7472689 版权声明:本文为博主原创文章,转载请附上博文链接!
|
请发表评论