OracleDataAdapter.InsertCommand Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví příkaz SQL nebo uloženou proceduru, která se používá k vložení nových záznamů do databáze.
public:
property System::Data::OracleClient::OracleCommand ^ InsertCommand { System::Data::OracleClient::OracleCommand ^ get(); void set(System::Data::OracleClient::OracleCommand ^ value); };
public System.Data.OracleClient.OracleCommand InsertCommand { get; set; }
member this.InsertCommand : System.Data.OracleClient.OracleCommand with get, set
Public Property InsertCommand As OracleCommand
Hodnota vlastnosti
Používá OracleCommand se během operace aktualizace k vložení záznamů do databáze, které odpovídají novým řádkům v objektu DataSet.
Příklady
Následující příklad vytvoří OracleDataAdapter a nastaví SelectCommand vlastnosti a InsertCommand . Předpokládá, že jste již vytvořili OracleConnection objekt.
Public Shared Function CreateCustomerAdapter(conn As OracleConnection) As OracleDataAdapter
Dim da As OracleDataAdapter = New OracleDataAdapter()
Dim cmd As OracleCommand
' Create the SelectCommand.
cmd = New OracleCommand("SELECT * FROM Dept " & _
"WHERE DName = :pDName AND Loc = :pLoc", conn)
cmd.Parameters.Add("pDName", OracleType.NVarChar, 14)
cmd.Parameters.Add("pLoc", OracleType.NVarChar, 13)
da.SelectCommand = cmd
' Create the InsertCommand.
cmd = New OracleCommand("INSERT INTO Dept (DeptNo, DName) " & _
"VALUES (:pDeptNo, :pDName)", conn)
cmd.Parameters.Add("pDeptNo", OracleType.Number, 2, "DeptNo")
cmd.Parameters.Add("pDName", OracleType.NVarChar, 14, "DName")
da.InsertCommand = cmd
Return da
End Function
public static OracleDataAdapter CreateCustomerAdapter(OracleConnection conn)
{
OracleDataAdapter da = new OracleDataAdapter();
OracleCommand cmd;
// Create the SelectCommand.
cmd = new OracleCommand("SELECT * FROM Dept " +
"WHERE DName = :pDName AND Loc = :pLoc", conn);
cmd.Parameters.Add("pDName", OracleType.NVarChar, 14);
cmd.Parameters.Add("pLoc", OracleType.NVarChar, 13);
da.SelectCommand = cmd;
// Create the InsertCommand.
cmd = new OracleCommand("INSERT INTO Dept (DeptNo, DName) " +
"VALUES (:pDeptNo, :pDName)", conn);
cmd.Parameters.Add("pDeptNo", OracleType.Number, 2, "DeptNo");
cmd.Parameters.Add("pDName", OracleType.NVarChar, 14, "DName");
da.InsertCommand = cmd;
return da;
}
Poznámky
InsertCommand Pokud je vlastnost přiřazena dříve vytvořenému OracleCommand objektuOracleCommand, není klonován. Místo toho InsertCommand udržuje odkaz na dříve vytvořený OracleCommandobjekt .
Pokud během operace InsertCommand aktualizace není nastavena a informace o primárním klíči DataSetjsou k dispozici v , můžete použít OracleCommandBuilder třídu k automatickému vygenerování InsertCommanda další příkazy potřebné k odsouhlasení DataSet s databází. Chcete-li to provést, nastavte SelectCommand vlastnost objektu OracleDataAdapter. Logika generování také vyžaduje, aby informace o klíčovém sloupci DataSetbyly v . Další informace najdete v tématu Generování příkazů pomocí CommandBuilders.
Poznámka
Pokud spuštění tohoto příkazu vrátí řádky, mohou být tyto řádky přidány do objektu DataSet v závislosti na tom, jak nastavíte UpdatedRowSource vlastnost objektu OracleCommand .
Když aktualizujete sloupec datovým LONG RAW
typem, při zadání hodnoty NULL
do sloupce dojde k výjimce. Datový typ Oracle LONG RAW
je zastaralý typ v Oracle verze 8.0. Chcete-li se této chybě vyhnout, použijte BLOB
datový typ místo LONG RAW
.