La manipulation des valeurs null dans OracleCommand paramètres
Je suis en train de déterminer comment spécifier la valeur null comme valeur de paramètre dans un OracleCommand en utilisant le code C# suivant. J'ai extrait pertinentes bits, mais, fondamentalement, le point est que si sal_id vient avec la valeur 0, il doit être stocké comme null. J'ai essayé Null, "Null", et un couple d'autres choses, mais jusqu'à présent aucune chance.
cmd.CommandText = "INSERT INTO tcustomer(cust_id, salutation_id) VALUES(ORADBA.SEQCUST.NEXTVAL, :salid) RETURNING cust_id INTO :newcid" ;
if (sal_id==0) {
cmd.Parameters.Add("salid", Null) ;
} else {
cmd.Parameters.Add("salid", sal_id) ;
}
cmd.Parameters.Add("newcid", OracleDbType.Int32).Direction = ParameterDirection.ReturnValue ;
cmd.ExecuteNonQuery() ;
String newcidval = cmd.Parameters["newcid"].Value.ToString() ;
cmd.Dispose() ;
OriginalL'auteur Dan U. | 2009-07-22
Vous devez vous connecter pour publier un commentaire.
Essayer
System.DBNull
l'insead denull
.La réponse d'Andrew Hare est bidon comme Dan U. posté. C'est le Système.DBNull.Valeur
OriginalL'auteur Andrew Hare
DBNull ne peut pas être attribué à un autre type de données de sorte à les implicites de la convertir en objet.
où s.Class est de type int? et la valeur du paramètre est définie comme
(object)DBNull.Value
dans le cas où elle est nulleOriginalL'auteur Kamran Qadir
DBNull.Value
fonctionne pour certains, mais j'avais besoin de le convertir en un Oracle Type de mise en œuvreINullable
. Je recommande cette méthode si vous utilisez un Nullable type de données:OriginalL'auteur Thor
Pour moi
DBNull.Value
n'a pas fonctionné, donc j'ai fait comme ceci:et il a très bien fonctionné.
OriginalL'auteur ParPar
Vous pouvez ajouter un paramètre vide (il sera nulle pour commencer), et seulement la valeur si
sal_id != 0
:OriginalL'auteur bonh
vous pouvez vérifier l'État de votre OracleParameter objet - s'il est égal à OracleParameterStatus.NullFetched, rien n'a été récupéré, sinon utiliser des param Valeur de l'attribut.
Exemple:
OriginalL'auteur drumsk