• SSIS中代码页(Code Page)问题


    MSDN对于Code Page的解释是:对于字符和 Unicode 数据,代码页是代表特定字母、数字或符号的位模式的定义(例如 0x20 代表空格,0x74 代表字符“t”)。某些数据类型为每个字符使用一个字节;每个字节的位模式可以是 256 种不同位模式之一。

     

    在做SSIS项目的Data Coversion时,经常会遇到类似这样的问题:

    The column “xxx” cannot be processed because more than one code page (1252 and 936) are specified…

    这个问题一般会提示在Destination控件上(如OLE DB Destination),既数据导入的目的地,同时也会提示在Data Flow Task控件上,意思是在转换匹配的时候,字符集定义的代码页多于一个。不过当Destination控件问题解决了,Data Flow Task控件上的问题就会随之解决,因为Destination控件存在于Data Flow Task控件中。

    关于这个问题的解决方法,网上一般的说法是将Source控件(如OLE DB Source)的AlwaysUseDefaultCodePage属性设置为true即可。

    但我在实验中发现,直接在Visual Studio IDE右面的属性窗口设置是不起作用的,应该右键点击OLE DB Source控件,点击Show Advanced Editor…

    在弹出的窗口中选择Component Properties,然后将在这里将属性AlwaysUseDefaultCodePage设置为trueDefaultCodePage也应为936

    这样设置了之后,这个问题就解决了。

  • 相关阅读:
    使用强名称为程序集签名
    使用SN.exe对.Net生成的程序集进行签名
    .Net 程序集 签名工具sn.exe 密钥对SNK文件 最基本的用法
    MongoDB查询
    mongo批量写入es
    用 Spark 处理复杂数据类型(Array、Map、JSON字符串等)
    kafka消费者
    kafka生产者
    Pyspark常用API总结
    selenium+chromedriver+python3 不加载图片
  • 原文地址:https://www.cnblogs.com/michaelxu/p/1583111.html
Copyright © 2020-2023  润新知