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

VB.NET Discussion :

Problème requête insertion new utilisateur


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 84
    Par défaut Problème requête insertion new utilisateur
    Bonjour,

    Je suis actuellement en train d'essayer de faire une requete sous VB pour insérer un nouvel utilisateur dans ma base oracle 11g Seulement il me retourne une erreur quand je tente d'utiliser ce code dans mon application:
    Erreur sur Objet de connexion : Impossible de trouver la colonne spécifié dans l'ensemble de résultat (ResultSet).

    Je ne sais pas d'ou viens cette erreur :s

    Voici 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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    Private Sub cmdValider_Click(sender As System.Object, e As System.EventArgs) Handles cmdValider.Click
            Dim strConnex As String
            Dim Rqt As String
            Dim Rqt2 As String
            strConnex = GetConnexionString()
            Try
                Me.objConnexion = New OracleConnection(strConnex)
                Me.objConnexion.Open()
                ' Requête paramétrée    
                Rqt = "SELECT LOGIN, MDP FROM UTILISATEUR WHERE LOGIN = :Pseudo and  MDP = :Mdp"
                Rqt2 = "INSERT INTO UTILISATEUR (LOGIN, MDP, NIVEAU) VALUES (LOGIN = :Pseudo and  MDP = :Mdp and NIVEAU = :Niv)"
     
                ' On crée une commande Oracle    
                Using cmd = New OracleCommand()
                    cmd.Connection = Me.objConnexion
                    cmd.CommandText = Rqt
                    cmd.CommandType = CommandType.Text
     
                    ' On définit les valeurs des paramètres de la requête
                    cmd.Parameters.Add(":Pseudo", OracleDbType.Varchar2).Value = txtNewID.Text
                    cmd.Parameters.Add(":Mdp", OracleDbType.Varchar2).Value = txtNewMDP.Text()
     
                    ' On exécute la requête    
                    Using dr As OracleDataReader = cmd.ExecuteReader()
                        ' On lit le résultat    
                        dr.Read()
     
                        ' Récupère les infos et les stocke dans des variables    
                        Dim pseudo = dr.Item("LOGIN")
                        Dim mdp = dr.Item("MDP")
                        Dim Niv = dr.Item("NIVEAU")
                        If txtNewID.Text = pseudo Then
                            MessageBox.Show("ERREUR, Login déjà existant!")
                        Else
                            ' On crée une commande Oracle    
                            Using cmd2 = New OracleCommand()
                                cmd.Connection = Me.objConnexion
                                cmd.CommandText = Rqt2
                                cmd.CommandType = CommandType.Text
     
                                ' On définit les valeurs des paramètres de la requête
                                cmd.Parameters.Add(":Pseudo", OracleDbType.Varchar2).Value = txtNewID.Text
                                cmd.Parameters.Add(":Mdp", OracleDbType.Varchar2).Value = txtNewMDP.Text()
                                cmd.Parameters.Add(":Niv", OracleDbType.Varchar2).Value = txtNewNiv.Text()
     
                                ' On exécute la requête    
                                Using dr2 As OracleDataReader = cmd.ExecuteReader()
                                    ' On lit le résultat    
                                    dr.Read()
     
                                    MessageBox.Show("Le compte a été créé avec succès!")
                                    Connection.Show()
                                    Me.Hide()
                                End Using
                            End Using
                        End If
                    End Using
                End Using
     
            Catch ex As Exception
                ' --Message d'erreur en cas de problême de connexion à la BDD--
                MessageBox.Show("ERREUR sur objet de connexion : " & ex.Message)
            End Try
        End Sub

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 84
    Par défaut
    Ah, j'ai fais quelques modif, il reconnait désormais si le compte existe déjà, cependant lorsque c'est un nouveau compte (imaginons j'ai deja test1 dans ma base et je veux créer test2) il me dit que l'action est impossible en raison de l'état actuel de l'objet

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 84
    Par défaut
    Voila mon code actuel :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
     
    Private Sub cmdValider_Click(sender As System.Object, e As System.EventArgs) Handles cmdValider.Click
            Dim strConnex As String
            Dim Rqt As String
            Dim Rqt2 As String
            strConnex = GetConnexionString()
            Try
                Me.objConnexion = New OracleConnection(strConnex)
                Me.objConnexion.Open()
                ' Requête paramétrée    
                Rqt = "SELECT LOGIN FROM UTILISATEUR WHERE LOGIN = :Pseudo"
     
                ' On crée une commande Oracle    
                Using cmd = New OracleCommand()
                    cmd.Connection = Me.objConnexion
                    cmd.CommandText = Rqt
                    cmd.CommandType = CommandType.Text
     
                    ' On définit les valeurs des paramètres de la requête
                    cmd.Parameters.Add(":Pseudo", OracleDbType.Varchar2).Value = txtNewID.Text
     
                    ' On exécute la requête    
                    Using dr As OracleDataReader = cmd.ExecuteReader()
                        ' On lit le résultat    
                        dr.Read()
     
                        ' Récupère les infos et les stocke dans des variables    
                        Dim pseudo = dr.Item("LOGIN")
                        If txtNewID.Text = pseudo Then
                            MessageBox.Show("ERREUR, Login déjà existant!")
                        Else
                            Rqt2 = "INSERT INTO UTILISATEUR (ID_UTILISATEUR, LOGIN, MDP, NIVEAU) VALUES (ID_UTILISATEUR = :NbCompte and LOGIN = :Pseudo and  MDP = :Mdp and NIVEAU = :Niv)"
     
                            ' On crée une commande Oracle    
                            Using cmd2 = New OracleCommand()
                                cmd.Connection = Me.objConnexion
                                cmd.CommandText = Rqt2
                                cmd.CommandType = CommandType.Text
     
                                ' On définit les valeurs des paramètres de la requête
                                cmd.Parameters.Add(":Pseudo", OracleDbType.Varchar2).Value = txtNewID.Text
                                cmd.Parameters.Add(":Mdp", OracleDbType.Varchar2).Value = txtNewMDP.Text()
                                cmd.Parameters.Add(":Niv", OracleDbType.Varchar2).Value = txtNewNiv.Text()
                                cmd.Parameters.Add(":NbCompte", OracleDbType.Varchar2).Value = NbCompte
     
                                ' On exécute la requête    
                                Using dr2 As OracleDataReader = cmd.ExecuteReader()
                                    ' On lit le résultat    
                                    dr.Read()
     
                                    MessageBox.Show("Le compte a été créé avec succès!")
                                    Connection.Show()
                                    Me.Hide()
                                End Using
                            End Using
                        End If
                    End Using
                End Using
     
            Catch ex As Exception
                ' --Message d'erreur en cas de problême de connexion à la BDD--
                MessageBox.Show("ERREUR sur objet de connexion : " & ex.Message)
            End Try
        End Sub
    Je pense que l'erreur doit se situer dans cette partie :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    If txtNewID.Text = pseudo Then
                            MessageBox.Show("ERREUR, Login déjà existant!")
                        Else
                            Rqt2 = "INSERT INTO UTILISATEUR (ID_UTILISATEUR, LOGIN, MDP, NIVEAU) VALUES (ID_UTILISATEUR = :NbCompte and LOGIN = :Pseudo and  MDP = :Mdp and NIVEAU = :Niv)"
     
                            ' On crée une commande Oracle    
                            Using cmd2 = New OracleCommand()
                                cmd.Connection = Me.objConnexion
                                cmd.CommandText = Rqt2
                                cmd.CommandType = CommandType.Text
     
                                ' On définit les valeurs des paramètres de la requête
                                cmd.Parameters.Add(":Pseudo", OracleDbType.Varchar2).Value = txtNewID.Text
                                cmd.Parameters.Add(":Mdp", OracleDbType.Varchar2).Value = txtNewMDP.Text()
                                cmd.Parameters.Add(":Niv", OracleDbType.Varchar2).Value = txtNewNiv.Text()
                                cmd.Parameters.Add(":NbCompte", OracleDbType.Varchar2).Value = NbCompte
     
                                ' On exécute la requête    
                                Using dr2 As OracleDataReader = cmd.ExecuteReader()
                                    ' On lit le résultat    
                                    dr.Read()
     
                                    MessageBox.Show("Le compte a été créé avec succès!")
                                    Connection.Show()
                                    Me.Hide()
                                End Using
                            End Using
                        End If
    Aidez moi svp :s Je suis bloqué!

Discussions similaires

  1. Problème requête INSERT INTO
    Par dutycorpse dans le forum Général Java
    Réponses: 3
    Dernier message: 10/11/2011, 20h08
  2. [AC-2003] Problème requête insertion
    Par Chessy dans le forum Access
    Réponses: 4
    Dernier message: 11/04/2011, 16h22
  3. [MySQL] Probléme requête insert
    Par Klivor dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 28/03/2011, 12h30
  4. Problème requête Insert into
    Par nonopower dans le forum VBA Access
    Réponses: 0
    Dernier message: 02/05/2010, 20h51
  5. [SQL]Problème requête INSERT
    Par Melaus dans le forum Langage SQL
    Réponses: 4
    Dernier message: 31/01/2007, 14h26

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