Delphi ADO更新条件
转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更新条件的更多相关文章
- Delphi ADO数据操作封装类
[delphi] view plaincopyprint? { 将数据集操作方面的东西全部封装成一个单独的类 TcustomAdoDataSet是TadoQuery.TadoTable.TadoDat ...
- 求助 delphi ADO组件的 CursorLocation属性设置为 clUseServer 用法 [问题点数:20分]
我有个管理系统,所有ADOQUERY组件的 CursorLocation属性设置为 clUseClient,一直运行正常,我尝试全部设置为clUseServer, 系统不运行了,请大家帮忙. 我的做法 ...
- Delphi ADO的Lookup类型字段的问题
关于ADO数据集控件中的Lookup类型字段,在其Lookupkeyfields属性指向的字段中存在NULL值的,就会出现'EOleException with message '发生未知错误',这个 ...
- mysql 更新条件为查询出的结果
UPDATE category c INNER JOIN ( SELECT b.category_id FROM category a, (SELECT * FROM category WHERE d ...
- Delphi ADO组件
樊伟胜
- C# 对DataTable中按条件进行筛选和更新。
当我们频繁的对数据库进行操作时,可能造成CPU使用率过高,这时我们可以先将数据表读取到DataTable,然后在必要的时候再更新到数据库中. 以下是DataTable中对数据的选择和更新操作.采用Da ...
- mysql更新数据,条件为实时查询出来的数据
--将更新条件保存到临时表里 CREATE TABLE tmp3 AS (SELECT username FROM oa_user WHERE username NOT IN (SELECT user ...
- ADO.NET数据库编程
ADO.NET数据库编程 1.ADO.NET的相关概念. Microsoft的新一代技术,是ADO组件的后继者. 主要目的是在.NET Framework平台存取数据. 提供一致的对象模型,可以存取和 ...
- 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, ...
随机推荐
- cp命令:复制文件和目录
cp命令:复制文件和目录 [功能说明] cp命令可以理解英文单词copy的缩写,其功能为复制文件和目录. [语法格式] 1 cp [option] [source] [dest] 2 cp [选项] ...
- python简单实现论文查重(软工第一次项目作业)
前言 软件工程 https://edu.cnblogs.com/campus/gdgy/informationsecurity1812 作业要求 https://edu.cnblogs.com/cam ...
- tensorflow Mobilenet 导出模型的方法
python export_inference_graph.py --input_type image_tensor --pipeline_config_path ssd_mobilenet_v1_c ...
- Linux就该这么学28期——Day05 vim编辑器与Shell命令脚本 (yum配置 网卡配置)
vim 三种模式: 命令模式 按行操作 dd 剪切.删除 5dd dG 全删 yy 复制光标所在行 p 粘贴 u 撤销操作 / 搜索 /ab n 下一个 N 上一个 输入模式 a 当前光标处 ...
- 极简 Node.js 入门 - 5.2 url & querystring
极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...
- 皕杰报表:连接数据库失败,请检查数据源配置(oracle.jdbc.driver.OracleDriver)
皕杰报表:连接数据库失败,请检查数据源配置(oracle.jdbc.driver.OracleDriver)问题解决: 缺少了classes12.jar 在窗口--首选项--报表运行时配置--添加-- ...
- Eclipse JSP +Tomcat 环境搭建 错误记录
环境搭建请参考原文:https://www.cnblogs.com/james-lee/p/5964238.html 错误1:运行时,弹出如下错误:(如果没有此错误,请忽略) 原因是,我们之前点击了T ...
- Java 等待/通知机制
等待/通知的目的是确保等待线程从wait()方法返回时能够感知到通知线程对变量所做出的的修改: 等待方遵循如下原则: 1.获取对象的锁 2.如果条件不满足,那么调用对象的wait()方法,被通知后任要 ...
- .net core autofac asyncinterceptor 异步拦截器帮助包
autofac使用拦截器实现AOP,是基于Castle.Core的.然而Castle.Core并未提供原生异步支持.所以需要使用帮助类实现,这在autofac官方文档的已知问题中有详细说明: http ...
- service下载任务
在service开启线程,利用接口更新进度 public class MainActivity extends AppCompatActivity { MyBindService msgService ...