ASP调用存储过程时操作text字段出错

作者:小牛 来源:ITPOW(原创) 日期:2006-5-22

在 ASP 中利用 ADODB.Command 调用存储过程,将提交的数据插入到表,其中有一句如下:

cmd.parameters.Append cmd.CreateParameter("@content", 201, 1, 16, content)

@content 为存储过程的参数名

201 为 adLongVarChar 类型

1 为参数传递方向,1 表传入

16 为字段长度

content 为值

在测试时正确,正式使用时却失败。经排查原因如下:

测试时输入的字符都很简单,正式使用时输入的是整篇文章。上例的错误关键在于对字段长度的理解,在 SQL Server 管理器中设计字段时 text 类型显示的长度为 16,这里跟着写 16,所以仅 16 字及以下的数据可以写入。

改成如下:

cmd.parameters.Append cmd.CreateParameter("@content", 201, 1, Len(content), content)

相关文章