以下不保存证正确

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
版权声明:本文为博主原创文章,转载请附上博文链接!

笔记:delphi 与 Query的更多相关文章

  1. dojo 学习笔记之dojo.query - query(id) 与query(class)的差别

    考虑这个样例:动态创建一个页面的时候,用new listtem()生成多个listitem, 且每一个listitem中都生成一个按钮button. 假设想要给每一个按钮都绑定一个click事件,用d ...

  2. [笔记] Delphi 10.2.1 Tokyo 安装使用笔记

    Android 平台: ListView 滑动速度已有改善,但比起 Berlin 还是略慢一些(在较慢的机子可感觉的到)仅于 Android 平台,其它平台没差. TMemo, TEdit 输入文字的 ...

  3. [笔记]Delphi 2007写DLL供VC调用实例

    考虑如下几种常用情况: - VC传入int,返回int- VC传入char *,返回int- VC传入char *,返回char *及int 为简化问题,传递的字符串参数只考虑ANSI格式,不考虑UN ...

  4. Mongodb慢查询笔记 (Mongodb slow query log)

    -- =========================== -- mongodb slow query log -- =========================== Reference: h ...

  5. Elasticsearch学习笔记-Delete By Query API

    记录关于Elasticsearch的文档删除API的学习 首先官网上Document APIs介绍了 Delete API 和Delete By Query API. Delete API可以通过指定 ...

  6. [笔记] Delphi使用DUnitX做单元测试的简单例子

    Delphi XE 提供了对DUnitX的支持,记录一个最简例子. 首先创建项目A,然后创建单元untCalc,代码如下: unit untCalc; interface type TCalc = c ...

  7. Delphi 使用Query组件的SQL查询

    樊伟胜

  8. Delphi+GDI

    源:Delphi 初试GDI+学习笔记 Delphi 深入GDI+学习笔记

  9. delphi mysql

    Delphi2006连接Mysql5.1 2.DBExpress+dbxopenmysql50.dll可能很多人会奇怪,dbxopenmysql50.dll是什么东东?DBExpress不就是数据库连 ...

随机推荐

  1. [SYZOJ279]滑♂稽♂树

    主♂席♂树♂裸♂题 https://syzoj.com/problem/279 https://oj.changjun.com.cn/problem/detail/pid/2425 // It is ...

  2. UWP DEP0700: 应用程序注册失败。[0x80073CF9] 另一个用户已安装此应用的未打包版本。当前用户无法将该版本替换为打包版本。

    最近电脑抽风,我在[应用程序和功能]中重置了以下我的App自然灾害,居然,搞出大新闻了. 它居然从列表中消失了... vs再次编译代码的时候,提示 严重性 代码 说明 项目 文件 行 禁止显示状态 错 ...

  3. FFmpeg+vs2013开发环境配置(windows)

    1.下载ffmpeg包(dll.include.lib)   https://ffmpeg.zeranoe.com/builds/         有3个版本:Static.Shared和Dev St ...

  4. 2.深入解析数据类型与变量——《Excel VBA 程序开发自学宝典》

    2.1 数据类型 数据类型 所占字节 Byte 1 Boolean 2 Integer 2 Long 4 Single 4 Double 8 Currency 8 Decimal 14 Date 8 ...

  5. ats 分层缓存

    了解缓存层次结构 缓存层次结构由彼此通信的缓存级别组成.ats支持多种类型的缓存层次结构. 所有缓存层次结构都识别父和子的概念. 父缓存是层次结构中较高的缓存, ats可以 将请求转发到该缓存.子缓存 ...

  6. JavaScript中数组中遍历的方法

    前言 最近看了好几篇总结数组中遍历方法的文章,然而"纸上得来终觉浅",决定此事自己干.于是小小总结,算是自己练手了. 各种数组遍历方法 数组中常用的遍历方法有四种,分别是: for ...

  7. Django_rest_framework_版本(待验证)

    简介 API版本控制可以用来在不同的客户端使用不同的行为.REST框架提供了大量不同的版本设计. 版本控制是由传入的客户端请求决定的,并且可能基于请求URL,或者基于请求头. 有许多有效的方法达到版本 ...

  8. 查询数据库时mapper报错:It's likely that neither a Result Type nor a Result Map was specified.

    因为mapper.xml里把resultType写成了parameterType

  9. Notes of Scrum Meeting(2014/11/2)

    Notes of Scrum Meeting (2014/11/2) 软件工程项目组Sevens开始项目之后的第一次Scrum Meeting报告 会议时间:2014年11月2日  20:00—20: ...

  10. First scrum meeting report - 151017

    提要 今天开会主要是讨论一下北航MOOC客户端的具体要求和每个人的大致分工.会议后来还简单商讨了一下我们app的大致界面框架. 会议地点:大运村KFC 会议时间:2015年10月17日,15:00-1 ...