OracleDataAdapter.InsertCommand Propriété

Définition

Obtient ou définit une instruction SQL ou une procédure stockée utilisée pour insérer de nouveaux enregistrements dans la base de données.

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

Valeur de propriété

OracleCommand employé dans une opération de mise à jour pour insérer dans la base de données des enregistrements qui correspondent aux nouvelles lignes dans DataSet.

Exemples

L’exemple suivant crée un OracleDataAdapter et définit les SelectCommand propriétés et InsertCommand . Il suppose que vous avez déjà créé un OracleConnection objet.

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;  
}  

Remarques

Lorsque la InsertCommand propriété est affectée à un objet créé OracleCommand précédemment, le n’est OracleCommand pas cloné. Au lieu de cela, InsertCommand conserve une référence au précédemment créé OracleCommand.

Pendant une opération de mise à jour, si InsertCommand n’est pas défini et que des informations sur la clé primaire sont présentes dans , DataSetvous pouvez utiliser la OracleCommandBuilder classe pour générer InsertCommandautomatiquement et les commandes supplémentaires nécessaires pour rapprocher le DataSet avec la base de données. Pour ce faire, définissez la SelectCommand propriété de .OracleDataAdapter La logique de génération exige également que les informations de colonne clés soient présentes dans .DataSet Pour plus d’informations, consultez Génération de commandes avec CommandBuilders.

Notes

Si l’exécution de cette commande retourne des lignes, ces lignes peuvent être ajoutées au en fonction de la DataSet façon dont vous définissez la UpdatedRowSource propriété de l’objet OracleCommand .

Lorsque vous mettez à jour une colonne avec le LONG RAW type de données, une exception est levée lorsque vous entrez une valeur de NULL dans la colonne. Le type de données Oracle LONG RAW est un type déconseillé dans Oracle version 8.0. Pour éviter cette erreur, utilisez le BLOB type de données au lieu de LONG RAW.

S’applique à

Voir aussi