转https://blog.51cto.com/kinwar/1686710

代码将导致 ADO 在 WHERE 子句中包括的每个字段。如果您想确保所做的当前用户更新才会成功如果为表格中的行中的任何字段中不进行了任何更改,将"更新条件"属性中使用此值。

此属性可用的常数,如下所示:
   adCriteriaKey = 0

Uses only the primary key

adCriteriaAllCols = 1

Uses all columns in the recordset

adCriteriaUpdCols = 2  (Default)

Uses only the columns in the recordset that have been modified

adCriteriaTimeStamp = 3

Uses the timestamp column (if available) in the recordset
    
注意: 指定 adCriteriaTimeStamp 可能实际使用 adCriteriaAllCols 方法执行更新,如果表中没有一个有效的时间戳字段。另外,时间戳字段不必在该记录集本身。

//纱订单明细
  with adods_YarnJobDetail_PO do
  begin
    Active := False;
    CommandText := 'SELECT  job_item_id=a.Iden,a.Reserved_Qty,a.Quantity,a.Order_Status,a.Yarn_Type,a.Yarn_Count,a.Color_Code ' + #13#10 +
                   'FROM    AX_YarnPPODetail a WITH ( NOLOCK )' + #13#10 +
                           'JOIN AX_YarnPPOHead c WITH ( NOLOCK ) ON a.PPO_No = c.PPO_No' + #13#10 +
                           'LEFT JOIN SystemDb..pbYarnTypeList d WITH ( NOLOCK ) ON a.Yarn_Type = d.Yarn_Type' + #13#10 +
                           'LEFT JOIN systemdb..pbcustomerlist f WITH ( NOLOCK ) ON c.Customer_CD = f.Customer_Code' + #13#10 +
                           'WHERE   a.Yarn_Type = :Yarn_Type' + #13#10 +
                           'AND a.Yarn_Count = :Yarn_Count' + #13#10 +
                           'AND a.Quantity-Reserved_Qty>0' + #13#10 +
                           'AND d.Flag <> ''N''' + #13#10 +
                           'AND LOWER(a.Order_Status)=''confirmed''' + #13#10 +
                           'AND c.Order_Type=N''PO''';
     Parameters.ParamByName('Yarn_Type').Value := vYarn_Type;
     Parameters.ParamByName('Yarn_Count').Value := vYarn_Count; 
     Open;
     Properties['update criteria'].value := 1;
   end;
   Result := true;

Delphi ADO更新条件的更多相关文章

  1. Delphi ADO数据操作封装类

    [delphi] view plaincopyprint? { 将数据集操作方面的东西全部封装成一个单独的类 TcustomAdoDataSet是TadoQuery.TadoTable.TadoDat ...

  2. 求助 delphi ADO组件的 CursorLocation属性设置为 clUseServer 用法 [问题点数:20分]

    我有个管理系统,所有ADOQUERY组件的 CursorLocation属性设置为 clUseClient,一直运行正常,我尝试全部设置为clUseServer, 系统不运行了,请大家帮忙. 我的做法 ...

  3. Delphi ADO的Lookup类型字段的问题

    关于ADO数据集控件中的Lookup类型字段,在其Lookupkeyfields属性指向的字段中存在NULL值的,就会出现'EOleException with message '发生未知错误',这个 ...

  4. mysql 更新条件为查询出的结果

    UPDATE category c INNER JOIN ( SELECT b.category_id FROM category a, (SELECT * FROM category WHERE d ...

  5. Delphi ADO组件

    樊伟胜

  6. C# 对DataTable中按条件进行筛选和更新。

    当我们频繁的对数据库进行操作时,可能造成CPU使用率过高,这时我们可以先将数据表读取到DataTable,然后在必要的时候再更新到数据库中. 以下是DataTable中对数据的选择和更新操作.采用Da ...

  7. mysql更新数据,条件为实时查询出来的数据

    --将更新条件保存到临时表里 CREATE TABLE tmp3 AS (SELECT username FROM oa_user WHERE username NOT IN (SELECT user ...

  8. ADO.NET数据库编程

    ADO.NET数据库编程 1.ADO.NET的相关概念. Microsoft的新一代技术,是ADO组件的后继者. 主要目的是在.NET Framework平台存取数据. 提供一致的对象模型,可以存取和 ...

  9. ADO.NET .net core2.0添加json文件并转化成类注入控制器使用 简单了解 iTextSharp实现HTML to PDF ASP.NET MVC 中 Autofac依赖注入DI 控制反转IOC 了解一下 C# AutoMapper 了解一下

    ADO.NET   一.ADO.NET概要 ADO.NET是.NET框架中的重要组件,主要用于完成C#应用程序访问数据库 二.ADO.NET的组成 ①System.Data  → DataTable, ...

随机推荐

  1. Python基础笔记2-ruamel.yaml读写yaml文件

    上一篇笔记记录了Python中的pyyaml库对yaml文件进行读写,但了解到ruamel.yaml也能对yaml文件进行读写,于是想尝试一下它的用法. 一,注意 这里首先要更正一下网上大部分博客的说 ...

  2. centos 7.0 更改启动环境/启动进入图形界面/命令行模式

    当前我桌面模式 systemctl set-default multi-user.target ln -sf /lib/systemd/system/multi-user.target /etc/sy ...

  3. 关于【s】和[t]字符

    [s]:当一个具有执行权限的文件设置 [s](SetUID) 权限后,用户执行这个文件时将以文件所有者的身份执行.passwd 命令具有 SetUID 权限,所有者为 root(Linux 中的命令默 ...

  4. go mod 使用bee工具

    https://github.com/beego/bee/releases bee  windows https://github.com/beego/bee/releases/download/v1 ...

  5. linux(centos8):kubernetes安装的准备工作

    一,安装docker-ce19.03.11 1,卸载podman [root@kubemaster ~]# dnf remove podman podman是红帽系os自带的容器,卸载是为了避免冲突 ...

  6. day05 selenium基本使用

    本文通过举例介绍selenium的基本使用方法,用来爬取京东笔记本电脑的商品信息,包括名称,url,价格,评价信息. from selenium import webdriver # 导入键盘Keys ...

  7. 理解cookie

    Cookie的有效期 Cookie的maxAge决定着Cookie的有效期,单位为秒(Second).Cookie中通过getMaxAge()方法与setMaxAge(int maxAge)方法来读写 ...

  8. vue项目 封装api

    设计思路 为了加强项目的可维护性,建议将请求接口api进行统一封装, 一个常规项目的基础地址一般为唯一,所以考虑将基础地址设定一个变量 let  baseUrl: "xxxxxx" ...

  9. 【3】TensorFlow光速入门-训练及评估

    本文地址:https://www.cnblogs.com/tujia/p/13862357.html 系列文章: [0]TensorFlow光速入门-序 [1]TensorFlow光速入门-tenso ...

  10. viewpager欢迎页面底部点的滑动效果

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layo ...