У меня есть несколько автоматически сгенерированных классов доступа к данным для обработки таких вещей, как вставки и обновления.
Они выглядят так:
cmd.CommandType = CommandType.Text
cmd.CommandText = "UPDATE myTable set f1 = :f1, f2 = :f2, f3 = :f3 where id = :id"
cmd.Parameters.AddWithValue(":f1", _f1)
cmd.Parameters.AddWithValue(":f2", _f2)
cmd.Parameters.AddWithValue(":f3", _f3)
cmd.ExecuteNonQuery()
Если бы я переписал sql вделать то, что я хочу, это будет выглядеть примерно так:
cmd.CommandText = "UPDATE myTable set f1 = pkg.getMyValue, f2 = :f2, f3 = :f3 where id = :id"
Есть ли способ сделать это, установив _f1 в «специальное» значение, не изменяя SQL обновления или способ задания параметров?Только в некоторых случаях мне нужно будет установить значение f1 - в большинстве случаев оно будет нулевым.
При использовании .net 2.0 и system.data.oracleclient против oracle 11.