笔记: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

版权声明:本文为博主原创文章,转载请附上博文链接!