IDbDataAdapter.InsertCommand Właściwość

Definicja

Pobiera lub ustawia instrukcję SQL używaną do wstawiania nowych rekordów do źródła danych.

C#
public System.Data.IDbCommand? InsertCommand { get; set; }
C#
public System.Data.IDbCommand InsertCommand { get; set; }

Wartość właściwości

Element IDbCommand używany podczas Update(DataSet) wstawiania rekordów w źródle danych dla nowych wierszy w zestawie danych.

Przykłady

Poniższy przykład tworzy wystąpienie dziedziczonej OleDbDataAdapter klasy i ustawia SelectCommand właściwości i InsertCommand . Przyjęto założenie, że obiekt został już utworzony OleDbConnection .

C#
public static OleDbDataAdapter CreateCustomerAdapter(
    OleDbConnection connection)
{
    OleDbDataAdapter adapter = new OleDbDataAdapter();
    OleDbCommand command;

    // Create the SelectCommand.
    command = new OleDbCommand("SELECT CustomerID FROM Customers " +
        "WHERE Country = ? AND City = ?", connection);

    command.Parameters.Add("Country", OleDbType.VarChar, 15);
    command.Parameters.Add("City", OleDbType.VarChar, 15);

    adapter.SelectCommand = command;

    // Create the InsertCommand.
    command = new OleDbCommand(
        "INSERT INTO Customers (CustomerID, CompanyName) " +
        "VALUES (?, ?)", connection);

    command.Parameters.Add(
        "CustomerID", OleDbType.Char, 5, "CustomerID");
    command.Parameters.Add(
        "CompanyName", OleDbType.VarChar, 40, "CompanyName");

    adapter.InsertCommand = command;
    return adapter;
}

Uwagi

Jeśli Updateta właściwość nie jest ustawiona, a informacje o kluczu podstawowym znajdują się w elemecie DataSet, InsertCommand można je wygenerować automatycznie, jeśli właściwość dostawcy danych .NET Framework zostanie ustawionaSelectCommand. Następnie wszystkie dodatkowe polecenia, które nie zostały ustawione, są generowane przez program CommandBuilder. Ta logika generowania wymaga, aby informacje o kolumnie klucza znajdują się w elemecie DataSet. Aby uzyskać więcej informacji, zobacz Generowanie poleceń za pomocą poleceń CommandBuilders.

Po InsertCommand przypisaniu do utworzonego wcześniej elementu IDbCommandelement IDbCommand nie jest klonowany. Obiekt InsertCommand zachowuje odwołanie do wcześniej utworzonego IDbCommand obiektu.

Uwaga

Jeśli wykonanie tego polecenia zwraca wiersze, te wiersze mogą być dodawane do DataSet elementu w zależności od sposobu ustawiania UpdatedRowSource właściwości IDbCommand obiektu.

Dotyczy

Produkt Wersje
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1