过程或函数 Event_Update 指定的参数太多
Procedure or function Event_Update has too many arguments specified
我在尝试使用来自 c# 代码的过程函数更新 table 事件时收到错误消息 Procedure or function Event_Update has too many arguments specified.
更新程序
create procedure Event_Update
@id int,
@image varchar(50),
@title varchar(255),
@description varchar(255),
@date date
as
begin
update event set image = @image,title=@title,description=@description,event_date=@date where id=@id
end
事件Table
create table event(
id int identity(1,1) primary key,
image varchar(50) not null,
title varchar(255) not null,
description varchar(255) not null,
event_date date not null
)
C#代码
public void update(int id,string title, string image, string events, string date)
{
cmd.CommandText = "Event_Update";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@title", title);
cmd.Parameters.AddWithValue("@image", image);
cmd.Parameters.AddWithValue("@description", events);
cmd.Parameters.AddWithValue("@date", date);
cmd.ExecuteNonQuery();
}
cmd
是全局变量?在 update
方法中清除 cmd.Parameters
:
public void update(int id,string title, string image, string events, string date)
{
cmd.Parameters.Clear();
cmd.CommandText = "Event_Update";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@title", title);
cmd.Parameters.AddWithValue("@image", image);
cmd.Parameters.AddWithValue("@description", events);
cmd.Parameters.AddWithValue("@date", date);
cmd.ExecuteNonQuery();
}
我在尝试使用来自 c# 代码的过程函数更新 table 事件时收到错误消息 Procedure or function Event_Update has too many arguments specified.
更新程序
create procedure Event_Update
@id int,
@image varchar(50),
@title varchar(255),
@description varchar(255),
@date date
as
begin
update event set image = @image,title=@title,description=@description,event_date=@date where id=@id
end
事件Table
create table event(
id int identity(1,1) primary key,
image varchar(50) not null,
title varchar(255) not null,
description varchar(255) not null,
event_date date not null
)
C#代码
public void update(int id,string title, string image, string events, string date)
{
cmd.CommandText = "Event_Update";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@title", title);
cmd.Parameters.AddWithValue("@image", image);
cmd.Parameters.AddWithValue("@description", events);
cmd.Parameters.AddWithValue("@date", date);
cmd.ExecuteNonQuery();
}
cmd
是全局变量?在 update
方法中清除 cmd.Parameters
:
public void update(int id,string title, string image, string events, string date)
{
cmd.Parameters.Clear();
cmd.CommandText = "Event_Update";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@id", id);
cmd.Parameters.AddWithValue("@title", title);
cmd.Parameters.AddWithValue("@image", image);
cmd.Parameters.AddWithValue("@description", events);
cmd.Parameters.AddWithValue("@date", date);
cmd.ExecuteNonQuery();
}