起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 747|回复: 24

【结贴】选择更新选项 生成更新语句 不能更新主键**

[复制链接]
发表于 2007-5-30 10:45:08 | 显示全部楼层 |阅读模式
操作方法:
1、首先在数据集中 选中一张数据集表
2、在数据集更新选项中 选择 以主键为更新条件
3、选择生成SQl
4、在运行状态下的功能中修改主键的数据
5、点击保存按钮 结果 数据感觉被修改
6、点刷新按钮 主键字段的数据未被修改

请问 为什么 主键字段的数据未被修改
回复

使用道具 举报

发表于 2007-5-30 15:46:59 | 显示全部楼层
结果 数据感觉被修改?你怎么感觉的?是看到了,如果不是,请把该字段显示出来看看。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-30 17:01:33 | 显示全部楼层
就是当时点保存 后没有报错 数据是改动后的数据
但再点刷新按钮 主键的数据又恢复到 修改前了
回复 支持 反对

使用道具 举报

发表于 2007-5-30 18:20:47 | 显示全部楼层
把数据集复制到论坛上看看
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-30 19:22:43 | 显示全部楼层
object DataSetBZSJJ1: TSQLDataSet
  Relation.DeleteRule = krNoAction
  Relation.UpdateRule = krNoAction
  UpdateOptions.DeleteSQL =
    'DELETE FROM TABLE_TARGETDEF'#13#10'WHERE  ( FTargetDefCode = :OLD__FTa' +
    'rgetDefCode ) '#13#10#13#10
  UpdateOptions.Fields = <
    item
      Name = 'FTargetDefCode'
      ProviderFlags = [pfInUpdate, pfInWhere, pfInKey]
    end>
  UpdateOptions.InsertSQL =
    'INSERT INTO TABLE_TARGETDEF'#13#10'( FTargetDefCode , FTargetDefName ,' +
    ' FTargetTypeCode , FUnitName , FDataSourceCode , FCalcOrder , FC' +
    'alcFormula , FStatMethodCode , FStatParam , FOrder , FDesc ) '#13#10'V' +
    'ALUES ( :FTargetDefCode , :FTargetDefName , :FTargetTypeCode , :' +
    'FUnitName , :FDataSourceCode , :FCalcOrder , :FCalcFormula , :FS' +
    'tatMethodCode , :FStatParam , :FOrder , :FDesc )'#13#10#13#10
  UpdateOptions.UpdateSQL =
    'UPDATE TABLE_TARGETDEF '#13#10'SET  FTargetDefCode = :FTargetDefCode  ' +
    ', '#13#10' FTargetDefName = :FTargetDefName  , '#13#10' FTargetTypeCode = :F' +
    'TargetTypeCode  , '#13#10' FUnitName = :FUnitName  , '#13#10' FDataSourceCod' +
    'e = :FDataSourceCode  , '#13#10' FCalcOrder = :FCalcOrder  , '#13#10' FCalcF' +
    'ormula = :FCalcFormula  , '#13#10' FStatMethodCode = :FStatMethodCode ' +
    ' , '#13#10' FStatParam = :FStatParam  , '#13#10' FOrder = :FOrder  , '#13#10' FDes' +
    'c = :FDesc  '#13#10'WHERE  ( FTargetDefCode = :OLD__FTargetDefCode ) '#13 +
    #10#13#10
  UpdateOptions.UpdateMode = upWhereKeyOnly
  ID = 'BZSJJ1'
  DisplayName = #26631#20934#25968#25454#38598'1'
  Database.Reference = 'Biz:\GROUPPRODUCTSTAT\GROUPPRODUCTDB.Database'
  CheckConstraints = <>
  Params = <>
  SQL.Text = 'SELECT *'#13#10'  FROM TABLE_TARGETDEF'
  Left = 304
  Top = 200
end
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-30 19:47:04 | 显示全部楼层
再说一句重点的话  更新语句的问题  插入和删除都没问
更新语句的问题是  修改不了数据集的主键
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-30 20:54:54 | 显示全部楼层
本人 再次做了 测试 估计是平台的Bug   在B3   v2263 版本下 就没有这个问题,  在X3的 v2611下 出现的这个问题。请Justep相关人员看看这个问题 能不能在 平台底层解决
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-31 16:39:46 | 显示全部楼层
为什么没人 回答啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-31 19:34:45 | 显示全部楼层
我再顶!! 如果不能解决也请回复一下 好不  :1eye:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-6-1 13:45:51 | 显示全部楼层
继续 顶!!!!
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-6-23 05:37 , Processed in 0.038923 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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