SqlDataAdapter 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 SqlDataAdapter 類別的新執行個體。
多載
| 名稱 | Description |
|---|---|
| SqlDataAdapter() |
初始化 SqlDataAdapter 類別的新執行個體。 |
| SqlDataAdapter(SqlCommand) |
初始化一個以指定SqlCommandSelectCommand屬性為屬性的新類別實例SqlDataAdapter。 |
| SqlDataAdapter(String, SqlConnection) |
初始化一個包含 a SelectCommand 和 SqlConnection 物件的新類別實例SqlDataAdapter。 |
| SqlDataAdapter(String, String) |
初始化一個新的類別實例 SqlDataAdapter ,包含 a SelectCommand 和一個連接字串。 |
SqlDataAdapter()
初始化 SqlDataAdapter 類別的新執行個體。
public:
SqlDataAdapter();
public SqlDataAdapter();
Public Sub New ()
範例
以下範例會建立 並 SqlDataAdapter 設定其部分性質。
public static SqlDataAdapter CreateSqlDataAdapter(SqlConnection connection)
{
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
// Create the commands.
adapter.SelectCommand = new SqlCommand(
"SELECT CustomerID, CompanyName FROM CUSTOMERS", connection);
adapter.InsertCommand = new SqlCommand(
"INSERT INTO Customers (CustomerID, CompanyName) " +
"VALUES (@CustomerID, @CompanyName)", connection);
adapter.UpdateCommand = new SqlCommand(
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " +
"WHERE CustomerID = @oldCustomerID", connection);
adapter.DeleteCommand = new SqlCommand(
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection);
// Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.InsertCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.UpdateCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@oldCustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion =
DataRowVersion.Original;
adapter.DeleteCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion =
DataRowVersion.Original;
return adapter;
}
Public Function CreateSqlDataAdapter( _
ByVal connection As SqlConnection) As SqlDataAdapter
Dim adapter As New SqlDataAdapter()
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
' Create the commands.
adapter.SelectCommand = New SqlCommand( _
"SELECT CustomerID, CompanyName FROM CUSTOMERS", connection)
adapter.InsertCommand = New SqlCommand( _
"INSERT INTO Customers (CustomerID, CompanyName) " & _
"VALUES (@CustomerID, @CompanyName)", connection)
adapter.UpdateCommand = New SqlCommand( _
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = " & _
"@CompanyName WHERE CustomerID = @oldCustomerID", connection)
adapter.DeleteCommand = New SqlCommand( _
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection)
' Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.InsertCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.UpdateCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@oldCustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = _
DataRowVersion.Original
adapter.DeleteCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = _
DataRowVersion.Original
Return adapter
End Function
備註
當建立 的 SqlDataAdapter 實例時,以下的讀寫屬性會設定為以下初始值。
| 屬性 | 初始值 |
|---|---|
| MissingMappingAction | MissingMappingAction.Passthrough |
| MissingSchemaAction | MissingSchemaAction.Add |
你可以透過單獨呼叫這些屬性來更改這些屬性的價值。
另請參閱
適用於
SqlDataAdapter(SqlCommand)
初始化一個以指定SqlCommandSelectCommand屬性為屬性的新類別實例SqlDataAdapter。
public:
SqlDataAdapter(System::Data::SqlClient::SqlCommand ^ selectCommand);
public SqlDataAdapter(System.Data.SqlClient.SqlCommand selectCommand);
new System.Data.SqlClient.SqlDataAdapter : System.Data.SqlClient.SqlCommand -> System.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommand As SqlCommand)
參數
- selectCommand
- SqlCommand
SqlCommand A 是 Transact-SQL SELECT 語句或儲存程序,且被設定為 SelectCommand 的屬性SqlDataAdapter。
範例
以下範例會建立 並 SqlDataAdapter 設定其部分性質。
public static SqlDataAdapter CreateSqlDataAdapter(SqlCommand selectCommand,
SqlConnection connection)
{
SqlDataAdapter adapter = new SqlDataAdapter(selectCommand);
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
// Create the other commands.
adapter.InsertCommand = new SqlCommand(
"INSERT INTO Customers (CustomerID, CompanyName) " +
"VALUES (@CustomerID, @CompanyName)", connection);
adapter.UpdateCommand = new SqlCommand(
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " +
"WHERE CustomerID = @oldCustomerID", connection);
adapter.DeleteCommand = new SqlCommand(
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection);
// Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.InsertCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.UpdateCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@oldCustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
adapter.DeleteCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
return adapter;
}
Public Function CreateSqlDataAdapter(ByVal selectCommand As SqlCommand, _
ByVal connection As SqlConnection) As SqlDataAdapter
Dim adapter As New SqlDataAdapter(selectCommand)
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
' Create the commands.
adapter.InsertCommand = New SqlCommand( _
"INSERT INTO Customers (CustomerID, CompanyName) " & _
"VALUES (@CustomerID, @CompanyName)", connection)
adapter.UpdateCommand = New SqlCommand( _
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " & _
"WHERE CustomerID = @oldCustomerID", connection)
adapter.DeleteCommand = New SqlCommand( _
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection)
' Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.InsertCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.UpdateCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@oldCustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
adapter.DeleteCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
Return adapter
End Function
備註
此建構子實作 SqlDataAdapter 將屬性設定 SelectCommand 為參數中 selectCommand 指定的值。
當建立 的 SqlDataAdapter 實例時,以下的讀寫屬性會設定為以下初始值。
| 屬性 | 初始值 |
|---|---|
| MissingMappingAction | MissingMappingAction.Passthrough |
| MissingSchemaAction | MissingSchemaAction.Add |
你可以透過單獨呼叫這些屬性來更改這些屬性的價值。
當 SelectCommand (或其他任何指令屬性)被指派給先前建立 SqlCommand的 時,並 SqlCommand 不會被複製。 它 SelectCommand 會維持對先前建立 SqlCommand 物件的參考。
另請參閱
適用於
SqlDataAdapter(String, SqlConnection)
初始化一個包含 a SelectCommand 和 SqlConnection 物件的新類別實例SqlDataAdapter。
public:
SqlDataAdapter(System::String ^ selectCommandText, System::Data::SqlClient::SqlConnection ^ selectConnection);
public SqlDataAdapter(string selectCommandText, System.Data.SqlClient.SqlConnection selectConnection);
new System.Data.SqlClient.SqlDataAdapter : string * System.Data.SqlClient.SqlConnection -> System.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommandText As String, selectConnection As SqlConnection)
參數
- selectCommandText
- String
A String 是 Transact-SQL SELECT 語句或儲存程序,供屬性使用 SelectCommandSqlDataAdapter。
- selectConnection
- SqlConnection
代表連結的A SqlConnection 。 如果你的連線字串沒有使用 Integrated Security = true,你可以用 SqlCredential 來比在連接字串中指定使用者 ID 和密碼更安全地傳遞使用者 ID 和密碼。
範例
以下範例會建立 並 SqlDataAdapter 設定其部分性質。
public static SqlDataAdapter CreateSqlDataAdapter(string commandText,
SqlConnection connection)
{
SqlDataAdapter adapter = new SqlDataAdapter(commandText, connection);
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
// Create the other commands.
adapter.InsertCommand = new SqlCommand(
"INSERT INTO Customers (CustomerID, CompanyName) " +
"VALUES (@CustomerID, @CompanyName)");
adapter.UpdateCommand = new SqlCommand(
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " +
"WHERE CustomerID = @oldCustomerID");
adapter.DeleteCommand = new SqlCommand(
"DELETE FROM Customers WHERE CustomerID = @CustomerID");
// Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.InsertCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.UpdateCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@oldCustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
adapter.DeleteCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
return adapter;
}
Public Function CreateSqlDataAdapter(ByVal commandText As String, _
ByVal connection As SqlConnection) As SqlDataAdapter
Dim adapter As New SqlDataAdapter(commandText, connection)
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
' Create the commands.
adapter.InsertCommand = New SqlCommand( _
"INSERT INTO Customers (CustomerID, CompanyName) " & _
"VALUES (@CustomerID, @CompanyName)")
adapter.UpdateCommand = New SqlCommand( _
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " & _
"WHERE CustomerID = @oldCustomerID")
adapter.DeleteCommand = New SqlCommand( _
"DELETE FROM Customers WHERE CustomerID = @CustomerID")
' Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.InsertCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.UpdateCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@oldCustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
adapter.DeleteCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
Return adapter
End Function
備註
此實作SqlDataAdapter若未開啟,則 開閉 。SqlConnection 這在需要呼叫兩個或以上SqlDataAdapter物件的Fill應用程式中非常有用。 如果已經 SqlConnection 開啟,你必須明確呼叫 關閉 或 處置 來關閉。
當建立 的 SqlDataAdapter 實例時,以下的讀寫屬性會設定為以下初始值。
| 屬性 | 初始值 |
|---|---|
| MissingMappingAction | MissingMappingAction.Passthrough |
| MissingSchemaAction | MissingSchemaAction.Add |
你可以透過單獨呼叫這些屬性來更改這些屬性的價值。
另請參閱
適用於
SqlDataAdapter(String, String)
初始化一個新的類別實例 SqlDataAdapter ,包含 a SelectCommand 和一個連接字串。
public:
SqlDataAdapter(System::String ^ selectCommandText, System::String ^ selectConnectionString);
public SqlDataAdapter(string selectCommandText, string selectConnectionString);
new System.Data.SqlClient.SqlDataAdapter : string * string -> System.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommandText As String, selectConnectionString As String)
參數
- selectCommandText
- String
A String 是 Transact-SQL SELECT 語句或儲存程序,供屬性使用 SelectCommandSqlDataAdapter。
- selectConnectionString
- String
連接字串。 如果你的連線字串沒有使用 Integrated Security = true,你可以比在連接字串中指定使用者 ID 和密碼更安全地傳遞SqlDataAdapter(String, SqlConnection)SqlCredential使用者 ID 和密碼。
範例
以下範例會建立 並 SqlDataAdapter 設定其部分性質。
public static SqlDataAdapter CreateSqlDataAdapter(string commandText,
string connectionString)
{
SqlDataAdapter adapter = new SqlDataAdapter(commandText, connectionString);
SqlConnection connection = adapter.SelectCommand.Connection;
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
// Create the commands.
adapter.InsertCommand = new SqlCommand(
"INSERT INTO Customers (CustomerID, CompanyName) " +
"VALUES (@CustomerID, @CompanyName)", connection);
adapter.UpdateCommand = new SqlCommand(
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " +
"WHERE CustomerID = @oldCustomerID", connection);
adapter.DeleteCommand = new SqlCommand(
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection);
// Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.InsertCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID");
adapter.UpdateCommand.Parameters.Add("@CompanyName",
SqlDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@oldCustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
adapter.DeleteCommand.Parameters.Add("@CustomerID",
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original;
return adapter;
}
Public Function CreateSqlDataAdapter(ByVal commandText As String, _
ByVal connectionString As String) As SqlDataAdapter
Dim adapter As New SqlDataAdapter(commandText, connectionString)
Dim connection As SqlConnection = adapter.SelectCommand.Connection
adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey
' Create the commands.
adapter.InsertCommand = New SqlCommand( _
"INSERT INTO Customers (CustomerID, CompanyName) " & _
"VALUES (@CustomerID, @CompanyName)", connection)
adapter.UpdateCommand = New SqlCommand( _
"UPDATE Customers SET CustomerID = @CustomerID, CompanyName = @CompanyName " & _
"WHERE CustomerID = @oldCustomerID", connection)
adapter.DeleteCommand = New SqlCommand( _
"DELETE FROM Customers WHERE CustomerID = @CustomerID", connection)
' Create the parameters.
adapter.InsertCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.InsertCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID")
adapter.UpdateCommand.Parameters.Add("@CompanyName", _
SqlDbType.VarChar, 40, "CompanyName")
adapter.UpdateCommand.Parameters.Add("@oldCustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
adapter.DeleteCommand.Parameters.Add("@CustomerID", _
SqlDbType.Char, 5, "CustomerID").SourceVersion = DataRowVersion.Original
Return adapter
End Function
備註
這種建構子的超載 SqlDataAdapter 會利用參數 selectCommandText 來設定屬性 SelectCommand 。 會 SqlDataAdapter 建立並維護與參數所 selectConnectionString 建立的連結。
當建立 的 SqlDataAdapter 實例時,以下的讀寫屬性會設定為以下初始值。
| 屬性 | 初始值 |
|---|---|
| MissingMappingAction | MissingMappingAction.Passthrough |
| MissingSchemaAction | MissingSchemaAction.Add |
你可以透過單獨呼叫這些屬性來更改這些屬性的價值。