OracleDataAdapter.UpdateCommand OracleDataAdapter.UpdateCommand OracleDataAdapter.UpdateCommand OracleDataAdapter.UpdateCommand Property

Definizione

Ottiene o imposta un'istruzione SQL o una stored procedure utilizzata per aggiornare record nel database.Gets or sets an SQL statement or stored procedure used to update records in the database.

public:
 property System::Data::OracleClient::OracleCommand ^ UpdateCommand { System::Data::OracleClient::OracleCommand ^ get(); void set(System::Data::OracleClient::OracleCommand ^ value); };
public System.Data.OracleClient.OracleCommand UpdateCommand { get; set; }
member this.UpdateCommand : System.Data.OracleClient.OracleCommand with get, set
Public Property UpdateCommand As OracleCommand

Valore della proprietà

Oggetto OracleCommand utilizzato durante un'operazione di aggiornamento per aggiornare i record nel database che corrispondono alle righe modificate nell'oggetto DataSet.An OracleCommand used during an update operation to update records in the database that correspond to modified rows in the DataSet.

Esempi

Nell'esempio seguente viene creato OracleDataAdapter un oggetto e SelectCommand vengono UpdateCommand impostate le proprietà e.The following example creates an OracleDataAdapter and sets the SelectCommand and UpdateCommand properties. Si presuppone che sia già stato creato OracleConnection un oggetto.It assumes you have already created an OracleConnection object.

Public Shared Function CreateCustomerAdapter(conn As OracleConnection) As OracleDataAdapter   

  Dim da As OracleDataAdapter = New OracleDataAdapter()  
  Dim cmd As OracleCommand  
  Dim parm As OracleParameter  

  ' 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 UpdateCommand.  

  cmd = New OracleCommand("UPDATE Dept SET DeptNo = pDeptNo, DName = pDName " & _  
                       "WHERE DeptNo = poldDeptNo", conn)  

  cmd.Parameters.Add("pDeptNo", OracleType.Number, 2, "DeptNo")  
  cmd.Parameters.Add("pDName", OracleType.NVarChar, 14, "DName")  

  parm = cmd.Parameters.Add("poldDeptNo", OracleType.Number, 2, "DeptNo")  
  parm.SourceVersion = DataRowVersion.Original  

  da.UpdateCommand = cmd  

  Return da  
End Function  
public static OracleDataAdapter CreateCustomerAdapter(OracleConnection conn)  
{  
  OracleDataAdapter da = new OracleDataAdapter();  
  OracleCommand cmd;  
  OracleParameter parm;  

  // 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 UpdateCommand.  

  cmd = new OracleCommand("UPDATE Dept SET DeptNo = pDeptNo, DName = pDName " +  
                       "WHERE DeptNo = poldDeptNo", conn);  

  cmd.Parameters.Add("pDeptNo", OracleType.Number, 2, "DeptNo");  
  cmd.Parameters.Add("pDName", OracleType.NVarChar, 14, "DName");  

  parm = cmd.Parameters.Add("poldDeptNo", OracleType.Number, 2, "DeptNo");  
  parm.SourceVersion = DataRowVersion.Original;  

  da.UpdateCommand = cmd;  

  return da;  
}  

Commenti

Quando UpdateCommand viene assegnato a un oggetto creato OracleCommandin precedenza OracleCommand , non viene clonato.When UpdateCommand is assigned to a previously created OracleCommand, the OracleCommand is not cloned. Al UpdateCommand contrario, mantiene un riferimento all'oggetto creato OracleCommand in precedenza.Instead, the UpdateCommand maintains a reference to the previously created OracleCommand object.

Durante un'operazione di aggiornamento, InsertCommand se non è impostato e le informazioni sulla chiave primaria sono presenti nel set di dati, OracleCommandBuilder è possibile usare la InsertCommandclasse per generare automaticamente e comandi aggiuntivi necessari per risolvere il DataSetal database.During an update operation, if InsertCommand is not set and primary key information is present in the DataSet, you can use the OracleCommandBuilder class to automatically generate InsertCommand, and additional commands needed to reconcile the DataSet to the database. A tale scopo, impostare la SelectCommand proprietà dell'oggetto OracleDataAdapter.To do this, set the SelectCommand property of the OracleDataAdapter. La logica di generazione richiede anche che le informazioni sulle colonne chiave siano DataSetpresenti in.The generation logic also requires key column information to be present in the DataSet. Per altre informazioni, vedere generazione di comandi con CommandBuilder.For more information see Generating Commands with CommandBuilders.

Nota

Se l'esecuzione di questo comando restituisce righe, queste righe possono essere unite DataSet con l' OracleCommand oggetto in base alla modalità UpdatedRowSource di impostazione della proprietà dell'oggetto.If execution of this command returns rows, these rows may be merged with the DataSet depending upon how you set the UpdatedRowSource property of the OracleCommand object.

Quando si aggiorna una colonna con il LONG RAW tipo di dati, viene generata un'eccezione quando si immette un valore NULL di nella colonna.When you update a column with the LONG RAW data type, an exception is thrown when you enter a value of NULL in the column. Il tipo LONG RAW di dati Oracle è un tipo deprecato in Oracle versione 8,0.The Oracle LONG RAW data type is a deprecated type in Oracle version 8.0. Per evitare questo errore, usare il BLOB tipo di LONG RAWdati anziché.To avoid this error, use the BLOB data type instead of LONG RAW.

Si applica a

Vedi anche