笔记:delphi 与 Query
以下不保存证正确
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
版权声明:本文为博主原创文章,转载请附上博文链接!