Procedure or function AppendDataCT has too many arguments specified
- by salvationishere
I am developing a C# VS 2008 / SQL Server website application. I am a newbie to ASP.NET. I am getting the above compiler error. Can you give me advice on how to fix this?
Code snippet:
public static string AppendDataCT(DataTable dt, Dictionary<int, string> dic)
{
string connString = ConfigurationManager.ConnectionStrings["AW3_string"].ConnectionString;
string errorMsg;
try
{
SqlConnection conn2 = new SqlConnection(connString);
SqlCommand cmd = conn2.CreateCommand();
cmd.CommandText = "dbo.AppendDataCT";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = conn2;
SqlParameter p1, p2, p3;
foreach (string s in dt.Rows[1].ItemArray)
{
DataRow dr = dt.Rows[1]; // second row
p1 = cmd.Parameters.AddWithValue((string)dic[0], (string)dr[0]);
p1.SqlDbType = SqlDbType.VarChar;
p2 = cmd.Parameters.AddWithValue((string)dic[1], (string)dr[1]);
p2.SqlDbType = SqlDbType.VarChar;
p3 = cmd.Parameters.AddWithValue((string)dic[2], (string)dr[2]);
p3.SqlDbType = SqlDbType.VarChar;
}
conn2.Open();
cmd.ExecuteNonQuery();
It errors on this last line here.
And here is that SP:
ALTER PROCEDURE [dbo].[AppendDataCT]
@col1 VARCHAR(50),
@col2 VARCHAR(50),
@col3 VARCHAR(50)
AS
BEGIN
SET NOCOUNT ON;
DECLARE @TEMP DATETIME
SET @TEMP = (SELECT CONVERT (DATETIME, @col3))
INSERT INTO Person.ContactType (Name, ModifiedDate)
VALUES( @col2, @TEMP)
END