首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

存储过程中为什么总是在报“将截断字符串或二进制数据”异常

2013-09-08 
存储过程中为什么总是在报“将截断字符串或二进制数据”错误第一张图是我在SQL Server Management Studio中

存储过程中为什么总是在报“将截断字符串或二进制数据”错误
第一张图是我在SQL Server Management Studio中设计的表
存储过程中为什么总是在报“将截断字符串或二进制数据”异常


第二图是我的报错内容。老是提示“将截断字符串或二进制数据。”
存储过程中为什么总是在报“将截断字符串或二进制数据”异常

附上我写的存储过程

CREATE PROCEDURE [dbo].[Uploadfile]
@fileName nchar(50),
@fileName_old nchar(50),
@filePath ntext,
@fileSize int,
@fileContent varbinary(MAX),
@fileType nchar(10)
AS
INSERT files(fileName, fileName_old, filePath, fileSize, fileContent, fileType)
VALUES(@fileName, @fileName_old, @filePath, @fileSize, @fileContent, @fileType)


请问大神是哪里出错了?
[解决办法]
在设置数据库参数时
command.Parameters.Add("@fileContent",SqlDbType.VarBinary,-1).Value=*****;
不设置参数长度时,会给一个默认的长度。

[解决办法]
不够长,存不进,查看你写入的数据长度,数据库字段加长
[解决办法]
varbinary 最大只能存8k,而且我记得sqlserver每行数据长度也有限制

你最好用image
[解决办法]
这个意思是数据太长放不进字段中,该仔细检查检查啊。
[解决办法]
文件名字、文件类型是不是有数据超出界定了,把字段长度设大些看看

热点排行