Represents a parameter to an SQLCommand and, optionally, its mapping to DataSet columns.
Object
SQLParameter
[Visual Basic] Public Class SQLParameter Implements IDataParameter, ICloneable [C#] public class SQLParameter : IDataParameter, ICloneable [C++] public __gc class SQLParameter : public IDataParameter, ICloneable [JScript] public class SQLParameter implements IDataParameter, ICloneable
Parameter names are case-insensitive.
Namespace: System.Data.SQL
Assembly: System.Data.dll
The following example sets multiple instances of SQLParameter through the SQLParameters collection within the SQLDataSetCommand. These parameters are used to map the data within the DataSet to columns within the data source.
[C#]
private DataSet InitializeMyDataSet() { // creates the table and its columns for the DataSet DataSet newData = new DataSet(); DataTable newTable = newData.Tables.Add("Catagories"); // add Columns to table newTable.Columns.Add("CategoryID",typeof(Int32)); newTable.Columns.Add("CategoryName", typeof(String)); newTable.Columns.Add("Description", typeof(String)); newTable.Columns.Add("Picture",typeof(Byte[])); return newData; } public void AccessToSQLServer() { // set Access connection and select strings const string strAccessConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=NWIND_RW.MDB"; const string strAccessSelect = "SELECT * FROM Categories ORDER BY CategoryID"; // set SQL Server connection and insert strings const string strSQLServerConn = "Data Source=VBsql7;Initial Catalog=Northwind;User ID=sa;Password=;"; const string strSQLServerInsert = "INSERT INTO Categories(CategoryName, Description, Picture) Values(@CategoryName,@Description,@Picture)"; // create my DataSet DataSet myDataSet = InitializeMyDataSet(); // create my Access objects ADOConnection myAccessConn = new ADOConnection(strAccessConn); ADODataSetCommand myAccessDataSetCmd = new ADODataSetCommand(); myAccessDataSetCmd.SelectCommand = new ADOCommand(strAccessSelect,myAccessConn); // create my SQL Server objects SQLConnection mySQLConn = new SQLConnection(strSQLServerConn); SQLDataSetCommand mySQLDataSetCmd = new SQLDataSetCommand(); mySQLDataSetCmd.InsertCommand = new SQLCommand(strSQLServerInsert,mySQLConn); // fill myDataSet with data from Access myAccessConn.Open(); try { myAccessDataSetCmd.FillDataSet(myDataSet,"table"); } finally { myAccessConn.Close(); } // update SQL Server with data from the DataSet mySQLConn.Open(); try { mySQLDataSetCmd.InsertCommand.Parameters.Add("CategoryName", typeof(String)); mySQLDataSetCmd.InsertCommand.Parameters.Add("Description", typeof(String)); mySQLDataSetCmd.InsertCommand.Parameters.Add("Picture", typeof(Byte[])); mySQLDataSetCmd.InsertCommand.Parameters[0].SourceColumn = "CategoryName"; mySQLDataSetCmd.InsertCommand.Parameters[1].SourceColumn = "Description"; mySQLDataSetCmd.InsertCommand.Parameters[2].SourceColumn = "Picture"; mySQLDataSetCmd.Update(myDataSet,"table"); } finally { mySQLConn.Close(); } }