SqlDataAdapter Конструкторы

Определение

Перегрузки

SqlDataAdapter()

Инициализирует новый экземпляр класса SqlDataAdapter.

SqlDataAdapter(SqlCommand)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью указанной команды SqlCommand в качестве свойства SelectCommand.

SqlDataAdapter(String, SqlConnection)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью SelectCommand и объекта SqlConnection.

SqlDataAdapter(String, String)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью SelectCommand и строки подключения.

SqlDataAdapter()

Инициализирует новый экземпляр класса SqlDataAdapter.

public:
 SqlDataAdapter();
public SqlDataAdapter ();
Public Sub New ()

Примеры

В следующем примере создается SqlDataAdapter и задаются некоторые его свойства.

public static SqlDataAdapter CreateSqlDataAdapter(SqlConnection connection)
{
    // Assumes that connection is a valid SqlConnection object
    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;
}

Комментарии

При создании экземпляра SqlDataAdapter для следующих свойств чтения и записи устанавливаются следующие начальные значения.

Свойства Начальное значение
MissingMappingAction MissingMappingAction.Passthrough
MissingSchemaAction MissingSchemaAction.Add

Вы можете изменить значение любого из этих свойств с помощью отдельного вызова свойства .

Применяется к

SqlDataAdapter(SqlCommand)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью указанной команды SqlCommand в качестве свойства SelectCommand.

public:
 SqlDataAdapter(Microsoft::Data::SqlClient::SqlCommand ^ selectCommand);
public SqlDataAdapter (Microsoft.Data.SqlClient.SqlCommand selectCommand);
new Microsoft.Data.SqlClient.SqlDataAdapter : Microsoft.Data.SqlClient.SqlCommand -> Microsoft.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommand As SqlCommand)

Параметры

selectCommand
SqlCommand

Объект SqlCommand, содержащий инструкцию Transact-SQL SELECT или хранимую процедуру, задаваемый в свойстве SelectCommand объекта SqlDataAdapter.

Примеры

В следующем примере создается SqlDataAdapter и задаются некоторые его свойства.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
    }
    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;
    }
}

Комментарии

Эта реализация конструктора SqlDataAdapter задает свойству SelectCommand значение, указанное в параметре selectCommand .

При создании экземпляра SqlDataAdapter для следующих свойств чтения и записи устанавливаются следующие начальные значения.

Свойства Начальное значение
MissingMappingAction MissingMappingAction.Passthrough
MissingSchemaAction MissingSchemaAction.Add

Вы можете изменить значение любого из этих свойств с помощью отдельного вызова свойства .

Если SelectCommand (или любое другое свойство команды) назначается ранее созданному SqlCommandобъекту SqlCommand , объект не клонируется. объект SelectCommand сохраняет ссылку на ранее созданный SqlCommand объект .

Применяется к

SqlDataAdapter(String, SqlConnection)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью SelectCommand и объекта SqlConnection.

public:
 SqlDataAdapter(System::String ^ selectCommandText, Microsoft::Data::SqlClient::SqlConnection ^ selectConnection);
public SqlDataAdapter (string selectCommandText, Microsoft.Data.SqlClient.SqlConnection selectConnection);
new Microsoft.Data.SqlClient.SqlDataAdapter : string * Microsoft.Data.SqlClient.SqlConnection -> Microsoft.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommandText As String, selectConnection As SqlConnection)

Параметры

selectCommandText
String

Объект String, содержащий инструкцию Transact-SQL SELECT или хранимую процедуру для использования в свойстве SelectCommand объекта SqlDataAdapter.

selectConnection
SqlConnection

SqlConnection, предоставляющее подключение. Если строка подключения не использует Integrated Security = true, можно использовать SqlCredential для более безопасной передачи идентификатора пользователя и пароля, чем при указании идентификатора пользователя и пароля в строке подключения в виде текста.

Примеры

В следующем примере создается SqlDataAdapter и задаются некоторые его свойства.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
    }
    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;
    }
}

Комментарии

Эта реализация SqlDataAdapter открывает и закрывает , SqlConnection если он еще не открыт. Это может быть полезно в приложении, которое должно вызывать Fill метод для двух или более SqlDataAdapter объектов. SqlConnection Если объект уже открыт, необходимо явно вызвать метод Close или Dispose, чтобы закрыть его.

При создании экземпляра SqlDataAdapter для следующих свойств чтения и записи устанавливаются следующие начальные значения.

Свойства Начальное значение
MissingMappingAction MissingMappingAction.Passthrough
MissingSchemaAction MissingSchemaAction.Add

Вы можете изменить значение любого из этих свойств с помощью отдельного вызова свойства .

Применяется к

SqlDataAdapter(String, String)

Инициализирует новый экземпляр класса SqlDataAdapter с помощью SelectCommand и строки подключения.

public:
 SqlDataAdapter(System::String ^ selectCommandText, System::String ^ selectConnectionString);
public SqlDataAdapter (string selectCommandText, string selectConnectionString);
new Microsoft.Data.SqlClient.SqlDataAdapter : string * string -> Microsoft.Data.SqlClient.SqlDataAdapter
Public Sub New (selectCommandText As String, selectConnectionString As String)

Параметры

selectCommandText
String

Объект String, содержащий инструкцию Transact-SQL SELECT или хранимую процедуру для использования в свойстве SelectCommand объекта SqlDataAdapter.

selectConnectionString
String

Строка подключения. Если в строке подключения не используется Integrated Security = true, можно использовать SqlDataAdapter(String, SqlConnection) и SqlCredential для передачи идентификатора пользователя и пароля с большей безопасностью, чем при указании идентификатора пользователя и пароля в виде текста в строке подключения.

Примеры

В следующем примере создается SqlDataAdapter и задаются некоторые его свойства.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
    }
    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;
    }
}

Комментарии

Эта перегрузка конструктора SqlDataAdapterselectCommandText использует параметр для задания SelectCommand свойства . будет SqlDataAdapter создавать и поддерживать соединение, созданное selectConnectionString с помощью параметра .

При создании экземпляра SqlDataAdapter для следующих свойств чтения и записи устанавливаются следующие начальные значения.

Свойства Начальное значение
MissingMappingAction MissingMappingAction.Passthrough
MissingSchemaAction MissingSchemaAction.Add

Вы можете изменить значение любого из этих свойств с помощью отдельного вызова свойства .

Применяется к