起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 268|回复: 11

【结】[请求]数据集回写问题

[复制链接]
发表于 2010-1-22 11:47:30 | 显示全部楼层 |阅读模式
同一个数据集,两个字符串字段相加,然后回写到其中的一个字段中,写如下代码,
GGXH为表达式字段为A1和A2的和。
var
temp:string;
begin
sdsDetail1.dataset.edit;
temp:= sdsDetail1.FieldByName('ggxh').AsString;
sdsDetail1.FieldByName('A2').AsString :=TEMP;
sdsDetail1.dataset.ApplyUpdates
提示报错

未命名.jpg

16.84 KB, 下载次数: 115

回复

使用道具 举报

发表于 2010-1-22 12:34:21 | 显示全部楼层
该数据集是来自一张表吗?如果不是,看看是否有相同ID的字段
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-1-22 15:04:22 | 显示全部楼层
数据集来自两张表,字段关联设置正确。写的时候是写入从表的字段中
回复 支持 反对

使用道具 举报

发表于 2010-1-22 16:15:01 | 显示全部楼层
列名有重复的了,需要设置下别名。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-1-22 21:36:10 | 显示全部楼层
怎么设置?用SQL吗?
回复 支持 反对

使用道具 举报

发表于 2010-1-23 09:07:34 | 显示全部楼层
在数据集的SQL上设置。
然后检查一下数据集的更新选项的提交SQL页面的insert、delete、update三个页面的SQL
可以用“attemp*duplicate” 在bbs上搜索
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-1-24 21:17:24 | 显示全部楼层
//数据集取数据
SELECT OZSR.DOCENTRY, OZSR.COMMENTS A, ZSR1.DOCENTRY C, ZSR1.COMMENTS B
  FROM OZSR, ZSR1
  WHERE OZSR.DOCENTRY = ZSR1.DOCENTRY and OZSR.DOCENTRY = 1046
//数据集更新语句
UPDATE OZSR
SET  DOCENTRY = OCENTRY  ,
COMMENTS = :A  
WHERE  ( DOCENTRY = :OLD__DOCENTRY )
AND  ( COMMENTS = :OLD__A )

UPDATE ZSR1
SET  DOCENTRY = :C  ,
COMMENTS = :B  
WHERE  ( DOCENTRY = :OLD__C )
AND  ( COMMENTS = :OLD__B )
//更新字段
DataSetBroker1.DataSet.edit;
DataSetBroker1.DataSet.FieldByName('A').AsString:=DataSetBroker1.DataSet.FieldByName('BDSJSZD1').AsString ;
DataSetBroker1.DataSet.ApplyUpdates
好像还是不行

无标题.png

5.54 KB, 下载次数: 98

回复 支持 反对

使用道具 举报

发表于 2010-1-25 09:46:43 | 显示全部楼层
楼主,我问一下
1、OZSR 这个表的 DOCENTRY 和 COMMENTS  字段跟  ZSR1 这个表的 DOCENTRY C  和 COMMENTS  字段值是一样的吗?
2、如果一样,都取出来的目的是啥,如果仅仅为了OZSR.DOCENTRY = ZSR1.DOCENTRY ,那么可以不要取ZSR1 这个表的 DOCENTRY C  和 COMMENTS  这两个字段

3、7楼的错误信息你看出啥了吗?说没有A这个字段,A是别名,提交的时候肯定不能用A了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-1-25 10:31:35 | 显示全部楼层
DOCENTRY 是一样,COMMENTS(用途说明) 的字段值不一样,取出来时为了将两个用途说明合并起来,
回复 支持 反对

使用道具 举报

发表于 2010-1-25 11:31:23 | 显示全部楼层
楼主,请你把相关资源导个包发上来,我们帮你看下吧。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-13 06:03 , Processed in 0.043837 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表