IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Insertion des parametres OleDB


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Par défaut Insertion des parametres OleDB
    Bonjour j'ai utilisé la classe OleDBConnection pour connecter à la base oracle et lorsque j'ai utilisé la requête d'insertion à l'aide des paramètres

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    OleDBConnection conn=new OleDBConnection (chaine);
    OleDBCommand Commandupdatedest=new OleDBCommand ();
     
    OleDbParameter para1 = Commandupdatedest.CreateParameter()
    para1.ParameterName = "@CodeBarre"
    para1.Value = valeurCodeBarre
    Commandupdatedest.Parameters.Add(para1)
    j'utlise meme paramtere pour les autres champs et voici la requete
    global

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Insert into Matable(ID_PERSONNE,STOCKAGE_PHOTO,CODEBAR,DIFFPHOTO,DATE_MAJ) values (@Id_Personne,@STOCKAGE_PHOTO,@CodeBarre,@DiffPhoto ,@DateMaj )
    et j'ai associé la requete a ma commande et lorsque j'ai exécute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Commandupdatedest.ExecuteNonQuery()
    il déclenche une exception

    Une ou plusieurs erreurs se sont produites lors du traitement de la commande.
    ORA-00936: expression absente

  2. #2
    Membre averti Avatar de Yodabis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 55
    Par défaut
    Fais un debug et arrête toi à la ligne
    "Commandupdatedest.Parameters.Add(para1)"

    Vérifie le SqlDbType qu'il a mis au paramètre.
    Pour être sur tu peux ajouter juste avant cette même ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
          para1.DbType = DbType.Int32;
    Int32 à remplacer par le bon type évidemment.

  3. #3
    Membre éclairé
    Inscrit en
    Juillet 2006
    Messages
    295
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 295
    Par défaut
    malgré j'ai ajouté le type mais il déclenche meme erreur ORA-00936 Error

  4. #4
    Membre averti Avatar de Yodabis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 55
    Par défaut
    Ok dans ce cas à part une erreur liée à la requête elle même je vois pas.

    Vérifie tes colonnes, ou oracle exige peut-être le ";" à la fin ...
    Essaye d'exécuter ta requête depuis oracle avec des valeurs bidon pour voir si ca tourne.

  5. #5
    Membre expérimenté Avatar de djidane39
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    272
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 272
    Par défaut
    J'ai un peu le même problème, j'ai une requête à laquel j'ajoute des paramètre, mais ça me lance l'exception : OleDbException : la variable "@Mandat" scalaire doit être déclarée.
    Voici ma requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT TOP 5 
    	MandatLot.man_id, MandatLot.imm_id
    FROM mandat_lot AS MandatLot
    WHERE MandatLot.man_id = @Mandat
    	AND MandatLot.imm_id = 68752
    Mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    /* Connexion */
    connexion = new OleDbConnection(paramConnexion);
     
    /* Création de la requête */
    commande = new OleDbCommand();
    commande.Connection = connexion;
    commande.CommandType = CommandType.Text;
    commande.CommandText = requete;
     
    /* Paramètres */
    commande.Parameters.Add("@Mandat", mandat);
     
    /* Exécution de la requête et récupération des données résultant */
    DataSet donnees = new DataSet();
    adapter = new OleDbDataAdapter();
    adapter.SelectCommand = commande;
    adapter.Fill(donnees, nomTable);
    Pour la partie /* Paramètres */ j'ai aussi essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    commande.Parameters.AddWithValue("@Mandat", mandat);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    commande.Parameters.Add(new OleDbParameter("@Mandat", mandat));
    et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    OleDbParameter param = commande.CreateParameter();
    param.ParameterName = "Mandat";
    param.Value = mandat;
    commande.Parameters.Add(param);
    J'ai un peu tout essayer, du coup je ne sais plus trop quoi faire?

  6. #6
    Membre expérimenté Avatar de djidane39
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    272
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2006
    Messages : 272
    Par défaut
    Donc apparemment, ce n'est tout simplement pas possible :
    MSDN

Discussions similaires

  1. [FLASH MX2004] Lecture des parametres de l'url
    Par matN59 dans le forum Flash
    Réponses: 5
    Dernier message: 23/06/2006, 13h30
  2. Réponses: 2
    Dernier message: 21/07/2005, 14h20
  3. [script SQL]comment passer des parametres a un scrip sql?
    Par la7su dans le forum Langage SQL
    Réponses: 5
    Dernier message: 23/03/2005, 10h55
  4. sql ne comprend pas mon where!et me demande des parametres
    Par marie10 dans le forum Langage SQL
    Réponses: 10
    Dernier message: 20/04/2004, 11h08
  5. insertion des blob avec LOAD DATA...
    Par orli1x51 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 27/10/2003, 18h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo