找回密码
 立即注册

QQ登录

只需一步,快速开始

红旗飘飘 悬赏达人认证 活字格认证

中级会员

29

主题

182

帖子

537

积分

中级会员

积分
537

悬赏达人活字格认证

红旗飘飘 悬赏达人认证 活字格认证
中级会员   /  发表于:2020-12-6 02:04  /   查看:2614  /  回复:3
10金币
本帖最后由 红旗飘飘 于 2020-12-6 02:31 编辑



这个合并的意思是什么意思:
追加新的数据,我懂,就是原有表格中如果没有本条数据就追加,更新基准行的数据是如何理解的?

我现在有一个非活字格系统,定时导出一个清单csv文件到D盘,然后我想将这个csv文件中的清单导入到活字格系统中的某个表中,每隔15分钟操作一次,之前选择的是替换,就是表格中数据全部清除,然后导入,结果发现,在那个一瞬间,如果客户正好读取这个表,这个表将是空的。
因此更换为 “合并”,并且按照上图设置了基准列,基准列值唯一,不重复。但是在执行的过程中,后台报错,数据无法更新。


Tid:10 2020/12/6 2:21:55: Assembly: Forguncy.Server2, Version=6.0.6.0, Culture=neutral, PublicKeyToken=967100671921c115 -----------
{
  "Errors": {
    "$type": "System.Data.SqlClient.SqlErrorCollection, System.Data",
    "$values": [
      {
        "$type": "System.Data.SqlClient.SqlError, System.Data",
        "Source": ".Net SqlClient Data Provider",
        "Number": 156,
        "State": 1,
        "Class": 15,
        "Server": "XXXXXXXX 此处隐藏IP",
        "Message": "关键字 'WHERE' 附近有语法错误。",
        "Procedure": "",
        "LineNumber": 1
      }
    ]
  },
  "ClientConnectionId": "00f3f233-2c7a-4536-af05-23c8af4501b6",
  "ClassName": "System.Data.SqlClient.SqlException",
  "Message": "关键字 'WHERE' 附近有语法错误。",
  "Data": {
    "$type": "System.Collections.ListDictionaryInternal, mscorlib",
    "HelpLink.ProdName": "Microsoft SQL Server",
    "HelpLink.ProdVer": "10.50.1600",
    "HelpLink.EvtSrc": "MSSQLServer",
    "HelpLink.EvtID": "156",
    "HelpLink.BaseHelpUrl": "http://go.microsoft.com/fwlink",
    "HelpLink.LinkId": "20476"
  },



附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

你这是定时导入还是手动导入的,有没有一个DEMO让我们复现下你的问题 你问的合并和替换的意思帮助手册中都有描述:当操作为导入CSV时,您可以设置导入模式为追加、合并和替换。 [*]追加:将CSV中的数据在原有数据基础上追加到其后。 [*]合并:追加新数据,更新基准行的数据,不删除既有数据。 [*]替换:删除所有查询的数据并追加新的数据。 基准列的作用是在合并和替换的时候,已基准列来判断是一条数据,需要进行合并或者替 ...

3 个回复

倒序浏览
最佳答案
最佳答案
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-12-6 02:04:32
来自 2#
你这是定时导入还是手动导入的,有没有一个DEMO让我们复现下你的问题
你问的合并和替换的意思帮助手册中都有描述:当操作为导入CSV时,您可以设置导入模式为追加、合并和替换。
  • 追加:将CSV中的数据在原有数据基础上追加到其后。
  • 合并:追加新数据,更新基准行的数据,不删除既有数据。
  • 替换:删除所有查询的数据并追加新的数据。
基准列的作用是在合并和替换的时候,已基准列来判断是一条数据,需要进行合并或者替换


回复 使用道具 举报
红旗飘飘悬赏达人认证 活字格认证
中级会员   /  发表于:2020-12-7 16:51:51
3#
用定时任务做的,我现在是定时导入指定目录的下面的一个csv,我用替换的话,会报上面的where错误,所以我现在是在半夜的时候先将数据清楚,然后使用追加,就可以了.
回复 使用道具 举报
Simon.hu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-12-7 17:14:05
4#
如果这样能解决您的问题,那就OK

如果需要我们继续帮你跟踪一下,我们需要您的工程文件和您的一个CSV,我们这边尝试重现一下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部