Error adding to the OleDbParameterCollection object

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

Thanks for any thoughts on this

I receive the following error when I run the code snippet below:

An OleDbParameter with ParameterName 'CateroryID_New' is not contained by
this OleDbParameterCollection.


Private Function CreateUpdateCommand() As System.Data.OleDb.OleDbCommand
Dim StrSQL As String
Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;
Ole DB Services=-4; Data Source=C:\Program File"& _

"s\Microsoft.NET\SDK\v2.0\QuickStart\aspnet\samples\data\App_Data\Northwind.mdb"
Dim dbConnection As System.Data.IDbConnection = New
System.Data.OleDb.OleDbConnection(connectionString)


strSQL = "UPDATE [Categories] SET CategoryName=?, Description=?
WHERE CategoryID=?"

Dim cmd As New System.Data.OleDb.OleDbCommand (strSQL, dbConnection)

Dim pc As System.Data.OleDb.OleDbParameterCollection = cmd.Parameters

pc.Add("CategoryID_New", System.Data.OleDb.OleDbType.Integer)
pc.Add("CategoryName_New", System.Data.OleDb.OleDbType.BSTR)
pc.Add("Description_New", System.Data.OleDb.OleDbType.BSTR)

pc.Add("CategoryID_Orig", System.Data.OleDb.OleDbType.Integer)
pc.Add("CategoryName_Orig", System.Data.OleDb.OleDbType.BSTR)
pc.Add("Description_Orig", System.Data.OleDb.OleDbType.BSTR)

Return cmd
End Function
 
Comment out the line:
pc.Add("CategoryID_New", System.Data.OleDb.OleDbType.Integer)

since there won't be a new id


glenn said:
Thanks for any thoughts on this

I receive the following error when I run the code snippet below:

An OleDbParameter with ParameterName 'CateroryID_New' is not contained by
this OleDbParameterCollection.


Private Function CreateUpdateCommand() As System.Data.OleDb.OleDbCommand
Dim StrSQL As String
Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;
Ole DB Services=-4; Data Source=C:\Program File"& _

"s\Microsoft.NET\SDK\v2.0\QuickStart\aspnet\samples\data\App_Data\Northwind.
mdb"
Dim dbConnection As System.Data.IDbConnection = New
System.Data.OleDb.OleDbConnection(connectionString)


strSQL = "UPDATE [Categories] SET CategoryName=?, Description=?
WHERE CategoryID=?"

Dim cmd As New System.Data.OleDb.OleDbCommand (strSQL, dbConnection)

Dim pc As System.Data.OleDb.OleDbParameterCollection = cmd.Parameters

pc.Add("CategoryID_New", System.Data.OleDb.OleDbType.Integer)
pc.Add("CategoryName_New", System.Data.OleDb.OleDbType.BSTR)
pc.Add("Description_New", System.Data.OleDb.OleDbType.BSTR)

pc.Add("CategoryID_Orig", System.Data.OleDb.OleDbType.Integer)
pc.Add("CategoryName_Orig", System.Data.OleDb.OleDbType.BSTR)
pc.Add("Description_Orig", System.Data.OleDb.OleDbType.BSTR)

Return cmd
End Function
 
Try pc.Add(new oledbParameter(...))

The parameters collection expects a parameter object in the Add().
 
Back
Top