报错 过程或函数 'news_insert' 需要参数 '@title',但未提供该参数。
但是我已经查过了,而且用断点来调试,
public bool Insert(News n)
{//TODO:增加新闻
bool flag = false;
DataTable dt = new DataTable();
string procName = "news_insert";
SqlParameter[] paras = new SqlParameter[]
{
new SqlParameter("@title",n.Title),
new SqlParameter("@content",n.Content),
new SqlParameter("@caid",n.CaId)
};
int res = sqlhelper.ExecuteNonQuery(procName, paras, CommandType.StoredProcedure);然后,网页中弹出过程或函数 'news_insert' 需要参数 '@title',但未提供该参数。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 过程或函数 'news_insert' 需要参数 '@title',但未提供该参数。源错误:
行 58: {
行 59: cmd.Parameters.AddRange(paras);
行 60: res = cmd.ExecuteNonQuery();
行 61: }
行 62: return res;
但是我已经查过了,而且用断点来调试,在new SqlParameter("@title",n.Title), 看到n.Title中是有值的,而且查了数据库中的对应的值,再三对比,名称都是正确一致的,但是为什么一直
但是我已经查过了,而且用断点来调试,
public bool Insert(News n)
{//TODO:增加新闻
bool flag = false;
DataTable dt = new DataTable();
string procName = "news_insert";
SqlParameter[] paras = new SqlParameter[]
{
new SqlParameter("@title",n.Title),
new SqlParameter("@content",n.Content),
new SqlParameter("@caid",n.CaId)
};
int res = sqlhelper.ExecuteNonQuery(procName, paras, CommandType.StoredProcedure);然后,网页中弹出过程或函数 'news_insert' 需要参数 '@title',但未提供该参数。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Data.SqlClient.SqlException: 过程或函数 'news_insert' 需要参数 '@title',但未提供该参数。源错误:
行 58: {
行 59: cmd.Parameters.AddRange(paras);
行 60: res = cmd.ExecuteNonQuery();
行 61: }
行 62: return res;
但是我已经查过了,而且用断点来调试,在new SqlParameter("@title",n.Title), 看到n.Title中是有值的,而且查了数据库中的对应的值,再三对比,名称都是正确一致的,但是为什么一直
把存储过程也贴出来看看
new SqlParameter("@title", SqlDbType.Char,100),
....}p[0].value = n.title;其他自己写吧;
你没有指定传入参数的数据类型,而且我也没见过你这么写啊
GO
/****** Object: StoredProcedure [dbo].[news_insert] Script Date: 07/05/2010 19:29:23 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[news_insert]
@title varchar(100),
@content text,
@caid int
as
begin
INSERT INTO news (title, [content], caId) VALUES(@title,@content,@caid)
end
这是存储过程的代码
{
SqlParameter [] pars =
{
new SqlParameter("@title",news.title),
new SqlParameter("@context",news.context),
new SqlParameter("@addtime",news.addtime)
};
int rowsAffected = 0;
DbHelperSQL.RunProcedure("AddNews", pars,out rowsAffected);
return rowsAffected;
}