System.Data.SqlClient.SqlException: 将截断字符串或二进制数据。

System.Data.SqlClient.SqlException
字符串或二进制数据将被截断。
该语句已终止。

 

出现此问题的原因是在创建表时,将被截断的临时表的字段大小。然后,插入行时,超过该字段的大小。专门,dbSPSReporting 数据库内的下列存储过程被导致此问题:

  • usp_Insert_FactFileStorage 存储过程创建一个名为 tblTempFileStorage_toFactStorage 的临时表。此表里 FileType 字段不正确地定义为 nVarChar(25)。而是,FileType 字段必须与为在 dbSPSReporting.dbo.tblDocs 表中的 DocType 字段匹配。
  • usp_Insert_FactWSS 存储过程创建一个名为 tblTempWSS_ToFactLoad 的临时表。此表中错误地定义以下字段:
    • WSSDate
    • WSSUser
    • WSSDoc
    这些字段必须匹配 dbSPSReportingStaging.dbo.tblWSSLogData 表中的相应字段。

检查数据库,发现字段定义太小了..varchar(200)已经被超出了..修改为varchar(2000)

错误纠正!

posted @ 2010-05-08 17:19  .小武.  阅读(3120)  评论(0编辑  收藏  举报