delphi sqlsever 实现存在则更新,不存在

(‘ if exists(select * from NBcommission where Type=‘‘‘+sType+‘‘‘and ItemNo=‘‘‘+s+‘‘‘ ) ‘+
‘ begin‘+
‘ update NBcommission set Amount=‘‘‘+m+‘‘‘ , CType=‘‘‘+sCType+‘‘‘where Type=‘‘‘+sType+‘‘‘and ItemNo=‘‘‘+s+‘‘‘ ;‘+
‘ end;‘ +
‘ else‘+
‘ begin‘+
‘ INSERT into NBcommission (Type,ItemNo,Unit,Amount,Ctype) values ( ‘‘‘+sType+‘‘‘ , ‘‘‘+s+‘‘‘ , ‘‘‘ +sUnit+ ‘‘‘ , ‘‘‘ +m+ ‘‘‘ , ‘‘‘ +sCType+ ‘‘‘); ‘+
‘ end;‘
);

时间: 2024-08-04 06:29:11

delphi sqlsever 实现存在则更新,不存在的相关文章

Delphi中客户端获取数据库更新信息(更新条数)

1.SQL语句 if not exists ( select 1 from tb where xxx='XXX') //不存在,则插入数据 begin insert into tb(xxx) values('XXX') //这里自己定义,插入或更新都可以 end select top 1 @@rowcount as RC //关键是这个语句,读取更新的信息 2.客户端获取更新情况,我这里用Clientdataset. with cds do begin commandtext:=sql ;//这

sql mysql和sqlserver存在就更新,不存在就插入的写法(转)

转自:http://hi.baidu.com/tidy0608/item/ff930fe2436f2601560f1dd9 sqlsever数据存在就更新,不存在就插入的两种方法 两种经常使用的方法: 1. Update, if @@ROWCOUNT = 0 then insert UPDATETable1 SETColumn1 = @newValue WHEREId = @id [email protected]@ROWCOUNT= 0 BEGIN INSERT INTOTable1 (Id,

C#开发奇技淫巧二:根据dll文件加载C++或者Delphi插件

原文:C#开发奇技淫巧二:根据dll文件加载C++或者Delphi插件 这两天忙着把框架改为支持加载C++和Delphi的插件,来不及更新blog了.      原来的写的框架只支持c#插件,这个好做,直接用c#的反射功能便可.但是公司不是所有人都搞C#,也不是所有的程序C#都能很好的完成,又或者其他公司提供的API不是C#的,这个时候,就需要这个框架能够支持多种语言了.      废话不多说,进入正题.     上网一搜,C#加载非托管的dll,无非就是使用 DllImportAttribut

【转自红鱼儿】推荐内置android控件的开源项目alcinoe

开源地址:https://github.com/Zeus64/alcinoe 该控件包,含以下几个控件: 1.基于OpenGL实现的视频播放器 ALVideoPlayer. ALVideoPlayer将一个视频绘制到一个TEXTURE.可以将视频完全集成到delphi form中,并且可以将任何需要的控件放在顶部,因为它支持Z-ORDER.官方的delphi视频播放器只是form顶部的原生视频播放器窗口,因此不支持Z-ORDER. 在android下作者使用ExoPlayer.ExoPlayer

Delphi ADOQuery无法更新定位行问题(其它数据库访问控件类似)

在Delphi中用ADOQuery进行数据库的记录操作时,有时会报 “无法为更新定位行.一些值可能已经在最后一次读取后已更改” 这个错. 这个错通常是 你操作的记录 在数据库中已经被修改过了, 如: 在数据库中已被删除了,你用ADOQuery更新了被删除的记录 数据库表字段有默认值,你用ADOQuery插入新记录后没有重新查询一遍就再次操作该记录 暂时知道的会引起该错误的可能有这两种,归纳起来 就是 ADOQuery的记录 与 数据库 表记录 对应不上 Delphi ADOQuery无法更新定位

更新Delphi中SVN客户端版本的方法

Delphi从XE以后集成里SVN客户端, 安装完Delphi以后, 在bin\subversion下, 存放的就是SVN客户端文件, 可惜版本有点低(好像是1.7的) 如果想更新成高版本的客户端文件按下面的方法: 1.到collab的网站SVN下载页面: http://www.collab.net/downloads/subversion 下载要使用的SVN Client版本(不是EDGE的), 大概6M左右的那个 2.下载下来安装(默认安装路径: C:\Program Files\Colla

delphi ADOQUery中错误解决方法"无法为更新定位行。一些值可能已在最后...

使用delphi中的ADOQuery控件中自带的,insert ,edit,delete此操作时,有时会出现下面的错误提示,提示错误信息:"无法为更新定位行.一些值可能已在最后一次读取后已更改." 此解决方案: 出现的原因: 1.可能是修改的时候在其它地方已经重新修改过此数据集中的某些字段信息,例如我在上传文件时,修改了某表中的文件名称和文件路径,由于没有注意到,所以在修改数据,并再一次选择上传文件时,就会报出此错误; 2.数据库中的表没有主键; 3.在数据库设计时,为某些字段设置了默

delphi XE系列及以后的android-sdk的更新

之前找了好久,总是找不到合适的安卓SDK更新地址,GOOGLE的地址肯定是不能用了. 终于一个偶然的机会找到了现在的这个地址,国内的它可以更新SDK,进行安卓开发的朋友们,你们有福气了. Android SDK在线更新镜像服务器 IPV4/IPV6: http://mirrors.opencas.cn 端口:80 IPV4/IPV6: http://mirrors.opencas.org 端口:80 IPV4/IPV6: http://mirrors.opencas.ac.cn 端口:80

delphi 绿色exe文件自我删除和更新

发布绿色exe文件后,再更新就需要把自己删除,用更新文件代替.  当然还需要其他细节比如隐藏老版本文件,还原老版本文件等 : 点击更新按钮后,先对自己重命名 procedure TFrmCheckUpdate.ActUpdateNowExecute(Sender: TObject); // 现在升级begin  {$IFDEF MSWINDOWS} // RenameFile(Paramstr(0),FormatDateTime('yyyymmddhhnn',Now)+'Newname.exe'