SqlServer2005用T-SQL导入数据时出现 错误将截断字符串或二进制数据。很是纳闷,因为所有的要导入的字段都用 select max(len(username)) from [user]; 查询过没有超出表定义的字段长度。sql语句:     insert into  A (UserName,[Password],Email) select username,[PassWord],Email from B B 表结构:
 
A表结构:对比 a,b表结构,发现a表email字段定义的长度比b表大,应该不是这个字段的原因,而password字段定义的比b表小,很有可能是这个字段的原因。
修改下sql语句:
insert into A (UserName,[Password],Email) select username,convert(varchar(16),[PassWord]),Email from B 
执行,导入成功!,还是跟表的定义有关啊~~~~

解决方案 »

  1.   

    csdn不能上传图片吗,晕啊,
    A表结构:
    [UserName] [nvarchar](100),
    [Password] [nchar](16),
    [Email] [nvarchar](100)B表结构:
    [UserName] [nvarchar](100),
    [PassWord] [nvarchar](100),
    [Email] [nvarchar](50)
      

  2.   

    那你把password字段长度定义长点alter A alter colunm [Password] [nchar](100)