sqlserver2008发布订阅出错,由于数据中存在特殊字符,如何处理?网上说的sql2005中有一个bug,启用带参数;-T4808,在sql2008中也试了,不行。

解决方案 »

  1.   

    错误消息:
    进程无法向表“"dbo"."BDJLB"”进行大容量复制。 (源: MSSQL_REPL,错误号: MSSQL_REPL20037)
    获取帮助: http://help/MSSQL_REPL20037
    成批发送失败
    链接服务器 '(null)' 的 OLE DB 访问接口 'STREAM' 返回了对列 '[!BulkInsert].sXGBM' 无效的数据。 (源: MSSQLServer,错误号: 7339)
    获取帮助: http://help/7339
    若要获取详细说明初始化订阅表时所遇到的错误的错误文件,请执行在下面显示的 bcp 命令。有关该 bcp 实用工具及其支持的选项的详细信息,请参阅 BOL。 (源: MSSQLServer,错误号: 20253)
    获取帮助: http://help/20253
    bcp "HIS_BZ"."dbo"."BDJLB" in "E:\Data\RepData\unc\ZFQ-TEST_HIS_BZ_HIS_BZ\20121010084351\BDJLB_2.bcp" -e "errorfile" -t"\n<x$3>\n" -r"\n<,@g>\n" -m10000 -SZFQ-TEST2 -T -w (源: MSSQLServer,错误号: 20253)
    获取帮助: http://help/20253sXGBM这个字段中,含有大量的 \ ‘' 字符,若屏蔽这个字段,就可以了
      

  2.   

    字段中含有特殊 \ ‘' 字符导致订阅失败的问题已经解决,由于数据库表结构设计采用varchar类型,非unicode,导致有半个汉字,订阅失败,如何解决?
      

  3.   

    试试, 将发布(publication)属性中的快照--快照格式修改为"字符", 默认为"本机"