Delphi tips

原创 2011年01月17日 15:55:00

1. When using TDataSet, if you want to check the data is changed or not, you can use ChangeCount porperty, but before this, you should Post all modifications. ChangeCount collects the counts of Posts. Or you can use TDataSet.Modified to check the modifications.

 

2. ''record not found or changed by  another user'',这个错误是我在做项目时,遇到的问题,找了一些参考才解决。如下:

所用的控件有:TDataSetProvider,TADOQuery,TClientDataSet

1.当 DataSetProvider.UpdateMode=upWhereAll 时,update时 where 是指定全部字段,比如,你有a、b、c 3个字段,修改了c字段,在app server中修改的命令是update ... set c=新c where a=旧a and b=旧b and c=旧c

如果 旧的a、b、c之一 已经被其他人改掉了,那where就找不到合适的记录来修改了。所以报告“记录被其他人修改”,这个问题和“锁定”是无关的。

2.当 DataSetProvider.UpdateMode=upWhereKeyOnly 时,update时 where 是指定key字段,比如,

你有a、b、c 3个字段,修改了c字段,a是key field在app server中修改的命令是

update ... set c=新c where a=旧a (只比较a字段)你的程序应该设计为客户修改不到主键字段的值,这样

你的客户只能修改到其他字段的值,其他字段不会出现在where中,就不会出现你说的问题了。

(用第2种方法解决,注意如果你的表原来没有主键的,需要双击dataset,添加你的所有field,在有唯一值的field的 ProviderFlasgs 属性里面 InKey 设置为 true (该field必须是有唯一值的,能相当于主键的,也就是能唯一确定该行记录的),TADOQuery,TClientDataSet控件里的唯一值的field字都要设置InKey为true)

 

3. You can use CloneCursor function to get a copy of the clientdataset.

delphi小技巧总汇

◇[DELPHI]网络邻居复制文件uses shellapi;copyfile(pchar(newfile.txt),pchar(//computername/direction/targer.txt...
  • hlms
  • hlms
  • 2005年04月20日 12:27
  • 1338

delphi tips

屏蔽系统功能键   当你不需要让用户按Alt+Enter、Ctrl+Alt+Del、Ctrl+Esc等功能键的时候加入以下代码:Vartemp:integer;beginSystemP...
  • zenghuaunix001
  • zenghuaunix001
  • 2006年05月19日 01:21
  • 791

Delphi tips

【文章】如何用Delphi控制Excel儲存格合併? 【編輯】領航天使   【作者】a6475 【內文】來源:http://delphi.ktop.com.tw/topic.asp?topic_id=...
  • h_q_p
  • h_q_p
  • 2004年06月25日 12:00
  • 804

腾讯QQ精准TIPS消息营销介绍

Tips消息:Tips消息是一种腾讯特有的消息精准告知方式,是在QQ用户在线时,不定时触发的一个图文并茂的消息框,该消息框在屏幕窗口右下角弹出,用户不主动点击则不会在桌面消失,保持时间长,点击效率高,...
  • lzlchangqi
  • lzlchangqi
  • 2016年10月16日 17:45
  • 677

Delphi 三种气泡提示效果

一、方法一 说明:这个效果不好,鼠标必须放在按钮上,气泡提示才可以出来,如果鼠标在按钮的范围之外,        用回车键点击按钮也不会激活气泡提示。 unitUnit1; interfa...
  • gzxiaorou
  • gzxiaorou
  • 2015年03月22日 15:11
  • 2198

C#使用Tips(部分)

C#基本使用
  • u012526003
  • u012526003
  • 2015年12月15日 18:58
  • 774

页面tips实现文字过长换行显示

// js函数实现中英文判断处理function tips(title, id) { var width = 40; var xx = 0; var returntitle = ""; for ( v...
  • gaochunhu
  • gaochunhu
  • 2011年04月04日 21:57
  • 1285

一些关于Web前端的小tips

代码细节
  • DeepLies
  • DeepLies
  • 2017年05月08日 11:41
  • 537

HTML Tips

1. HTML标签大小写不敏感,属性名和属性值大小写敏感
  • ymjring
  • ymjring
  • 2012年07月30日 11:46
  • 1496

MUI开发Tips

1、的href失效 解决方法:通过加入mui('body').on('tap', 'a', function () { document.location.href = this.href; });...
  • BlinkZero
  • BlinkZero
  • 2016年09月21日 14:26
  • 255
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Delphi tips
举报原因:
原因补充:

(最多只允许输入30个字)