NVARCHAR2和varchar

        今天做从oracle中导数据进sqlserver后台总是报

         com.microsoft.sqlserver.jdbc.SQLServerException: 将截断字符串或二进制数据。
        查看多次,发现列的字段长度都一样的,最后发现原来们

        oracle中我用的是nvarchar2(1000)而sqlserver中我用的是varchar(1000)原来这两者之间是有区别的

        nvarcahr(50)可以存储50个汉字
        varchar(50)只能存储25个汉字
        varchar是按字节存储
        nvarchar是按字符存储
        存储方式不一样
        nvarchar2的所有字符都按照2个字节存储
        nvarchar是中文按照2个字节存储,英文按照1个字节存储
        但是nvarchar2的兼容性好

猜你喜欢

转载自yingjun055.iteye.com/blog/1848705