IDbDataAdapter.InsertCommand Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define uma instrução SQL usada para inserir novos registros na fonte de dados.
public:
property System::Data::IDbCommand ^ InsertCommand { System::Data::IDbCommand ^ get(); void set(System::Data::IDbCommand ^ value); };
public System.Data.IDbCommand? InsertCommand { get; set; }
public System.Data.IDbCommand InsertCommand { get; set; }
member this.InsertCommand : System.Data.IDbCommand with get, set
Public Property InsertCommand As IDbCommand
Valor da propriedade
Um IDbCommand usado durante o Update(DataSet) para inserir registros na fonte de dados para novas linhas no conjunto de dados.
Exemplos
O exemplo a seguir cria uma instância da classe herdada OleDbDataAdapter e define as SelectCommand propriedades e InsertCommand . Ele pressupõe que você já tenha criado um OleDbConnection objeto .
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;
}
Public Shared Function CreateCustomerAdapter( _
connection As OleDbConnection) As OleDbDataAdapter
Dim adapter As New OleDbDataAdapter()
Dim command As OleDbCommand
' 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
End Function
Comentários
Durante Update, se essa propriedade não estiver definida e as informações de chave primária estiverem presentes no DataSet, o InsertCommand poderá ser gerado automaticamente se você definir a SelectCommand
propriedade de um provedor de dados .NET Framework. Em seguida, todos os comandos adicionais que você não definir serão gerados pelo CommandBuilder. Esta lógica de geração requer que as informações da coluna principal estejam presente no DataSet. Para obter mais informações, consulte Gerando comandos com CommandBuilders.
Quando InsertCommand é atribuído a um criado IDbCommandanteriormente, o IDbCommand não é clonado. O InsertCommand mantém uma referência ao objeto criado IDbCommand anteriormente.
Observação
Se a execução desse comando retornar linhas, essas linhas poderão ser adicionadas ao DataSet dependendo de como você definir a UpdatedRowSource propriedade do IDbCommand objeto.