J'utilise N'est-il pas possible d'exécuter une instruction de mise à jour simple sans avoir à créer un objet code> objet code> et à mettre à jour le jeu de données Comment exécuter une instruction de mise à jour en utilisant oracle odp.net strong> dans c # fort>? p> oracle.dataaccess.Client code> pour fonctionner avec
code>? p>
3 Réponses :
Je devrai vérifier la syntaxe exacte, mais voici un code rapide du haut de ma tête ce qui précède crée un objet de commande définit la commande jusqu'à exécuter une mise à jour SQL Déclaration, dans cet exemple, je montre un moyen de configurer une requête paramétrée, vous devez toujours accéder à une requête paramétrée. Une fois la commande configurée, vous venez d'appeler exécutenonquery code> pour exécuter la commande. P> p>
Doux! Merci! Bien que je ne puisse pas trouver "addwithvalue". Exécutenonquery était la clé, je l'ai essayé avec une requête paramétrée et cela a fonctionné. Je pense que je peux l'improviser d'ici. Vraiment apprécier votre temps !!
Karthik, l'avantage d'utiliser une requête paramétrée est qu'il fait toute la protection contre l'injection SQL pour vous.
Heya! Je ne changerais que quelques éléments pour ajouter la commande de transaction qui permet à Oracle d'exécuter des commandes de mise à jour: code code> oraclecommand cmd = con.Createcommand (); Oracletransaction ORATRANS = CON.BEGINTRANSACTION (ISAMENTLEVEL.PRANDCOMMAGED); cmd.Transaction = oratrans; . . . cmd.executenonquery (); ORATRANS.COMMIT (); Le tiens,
Suite à la réponse de @ Chris, voici la page de documentation de oracleparamètre < / a> classe qui a un code d'exemple sur l'utilisation de oraclecommand à exécuter Edit: Voici le point d'entrée de Documentation ODP.NET . P> mise à jour code> s. p>
Le lien vers le code d'échantillon que vous avez fourni est de savoir comment récupérer les données à l'aide d'oracledatreader et non sur la manière de mettre à jour les données (conformément à ma question initiale). J'ai déjà suivi la documentation ODP.NET et je n'ai pas pu trouver un échantillon de code similaire pour la mise à jour. Je souhaite que MSDN ait documenté ceci :(.
Ainsi, après un morceau de sommeil et de travailler cela pendant un moment, j'ai trouvé que la méthode que j'ai ajouté un nouveau paramètre à la commande de connexion est la suivante. Je n'ai pas trouvé la méthode comme indiqué dans le post précédent. Mind You vous utilisez un objet de requête que je passe les valeurs avec.
On dirait que vous insérez deux fois. Deux cmd.executenonquery (); code>
ODP.NET implémente IDBCOMMAND, IDBConnection et IDBDataDapter pourquoi vous ne pouvez pas les utiliser pour préparer et exécuter votre relevé de mise à jour.