OracleDataAdapter.UpdateCommand Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene o establece la instrucción SQL o el procedimiento almacenado utilizado para actualizar registros de la base de datos.
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
Valor de propiedad
OracleCommand que se utiliza durante una operación de actualización para actualizar en la base de datos los registros correspondientes a las filas modificadas en DataSet.
Ejemplos
En el ejemplo siguiente se crea y OracleDataAdapter se establecen las SelectCommand propiedades y UpdateCommand . Se supone que ya ha creado un OracleConnection objeto .
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;
}
Comentarios
Cuando UpdateCommand se asigna a un objeto creado OracleCommandanteriormente, OracleCommand no se clona. En su lugar, mantiene UpdateCommand una referencia al objeto creado OracleCommand anteriormente.
Durante una operación de actualización, si InsertCommand no se establece y la información de clave principal está presente en dataSet, puede usar la OracleCommandBuilder clase para generar InsertCommandautomáticamente y comandos adicionales necesarios para conciliar con DataSet la base de datos. Para ello, establezca la SelectCommand propiedad de OracleDataAdapter. La lógica de generación también requiere que la información de columna de clave esté presente en .DataSet Para obtener más información, vea Generar comandos con CommandBuilders.
Nota
Si la ejecución de este comando devuelve filas, estas filas se pueden combinar con en DataSet función de cómo establezca la UpdatedRowSource propiedad del OracleCommand objeto.
Al actualizar una columna con el LONG RAW
tipo de datos, se produce una excepción al escribir un valor de NULL
en la columna. El tipo de datos de Oracle LONG RAW
es un tipo en desuso en oracle versión 8.0. Para evitar este error, use el BLOB
tipo de datos en lugar de LONG RAW
.