【发布时间】:2014-03-14 17:45:37
【问题描述】:
我有一个存储过程,从 C# 代码执行它时出现此错误。
将数据类型 nvarchar 转换为 int 时出错。
我的存储过程:
CREATE PROCEDURE [dbo].[donateBloodProc]
@donorName varchar(50),
@gender varchar(20),
@email varchar(50),
@bloodGroup varchar(50),
@contact_number int, @L_D_D date,
@city varchar(50),
@arid_number varchar(50),
@DepId int
AS
INSERT INTO
tblDonors(Dname, gender, bloodGroup, email, contact_number,
L_D_D,city,arid_number,DeptID,dateDonated)
VALUES
(@donorName,@gender,@bloodGroup,@email,@contact_number,
@L_D_D,@city,@arid_number,@DepId,GETDATE());
这是我的 C# 代码:
SqlCommand commandForSP = new SqlCommand("donateBloodProc",DALobj.openConnection());
commandForSP.CommandType = System.Data.CommandType.StoredProcedure;
commandForSP.Parameters.AddWithValue("@donorName", TextBox1.Text);
commandForSP.Parameters.AddWithValue("@gender", RadioButtonList1.SelectedValue);
commandForSP.Parameters.AddWithValue("@email", TextBox5.Text);
commandForSP.Parameters.AddWithValue("@bloodGroup", DropDownList1.SelectedValue);
commandForSP.Parameters.AddWithValue("@contact_number", TextBox2.Text);
commandForSP.Parameters.AddWithValue("@L_D_D", TextBox3.Text);
commandForSP.Parameters.AddWithValue("@city", DropDownList2.SelectedValue);
commandForSP.Parameters.AddWithValue("@arid_number", TextBox1.Text);
commandForSP.Parameters.AddWithValue("@DepId", TextBox4.Text);
commandForSP.ExecuteNonQuery();
我的存储过程中列的所有数据类型都与我的数据库表tblDonors中的相同
【问题讨论】:
-
AddWithValuecausing problems 的另一个例子。
标签: c# asp.net sql-server asp.net-mvc stored-procedures