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

ASP.NET Discussion :

Requete SQL en VB , comment faire ?!


Sujet :

ASP.NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut Requete SQL en VB , comment faire ?!
    Salut,

    Je suis issue du PHP et je cherche a faire un script en asp.net

    J'arrive à me connecter à ma bdd MS SQL, mais je ne comprends pas comment passer une requete SQL et traiter son retour ...

    En gros, je veux récupérer le nom lié à un mail et c'est tout ...

    A ce jour mon code est :
    ' Déclaration de l'objet de connexion
    Dim oConnection As System.Data.SqlClient.SqlConnection

    ' Ecriture de la chaîne de connexion
    Dim sConnectionString As String
    sConnectionString = "Server=XXX.XXX.XXX.XXX;Initial Catalog=xxxxx;uid=xxxxxx;password=xxxxxxx"
    oConnection.ConnectionString = sConnectionString

    'requete sql
    Dim sql As String
    sql = "SELECT id FROM participants WHERE email="
    sql &= "'" & email & "'"
    ' Ouverture de la connexion
    oConnection.Open()

    ' Traitement des opération à effectuer sur la base de données
    ' là je ne sais pas quoi faire ?!


    ' Fermeture de la connexion
    oConnection.Close()


    Merci d'avance à tous de votre aide !

  2. #2
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Utilise SqlCommand.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Sans vouloir abuser tu aurais un exemple concret ?!

    J'ai bcp de mal avec asp.net ...


    Merci d'avance !!!!!

  4. #4
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Trouvé dans MSDN :-)

    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
     
    private static void ReadOrderData(string connectionString)
    {
        string queryString = 
            "SELECT OrderID, CustomerID FROM dbo.Orders;";
        using (SqlConnection connection = new SqlConnection(
                   connectionString))
        {
            SqlCommand command = new SqlCommand(
                queryString, connection);
            connection.Open();
            SqlDataReader reader = command.ExecuteReader();
            try
            {
                while (reader.Read())
                {
                    Console.WriteLine(String.Format("{0}, {1}",
                        reader[0], reader[1]));
                }
            }
            finally
            {
                // Always call Close when done reading.
                reader.Close();
            }
        }
    }

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    je voix que tu utilise vb et non pas cs, donc tu aura du mal a comprendre l'exemple précedent
    voici ce que tu cherche a mon avis :

    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
     
    Déclaration de l'objet de connexion
    Dim oConnection As System.Data.SqlClient.SqlConnection
     
    ' Ecriture de la chaîne de connexion
    Dim sConnectionString As String
    sConnectionString = "Server=XXX.XXX.XXX.XXX;Initial Catalog=xxxxx;uid=xxxxxx;password=xxxxxxx"
    oConnection.ConnectionString = sConnectionString
     
    'requete sql
    Dim sql As String
    sql = "SELECT id FROM participants WHERE email="
    sql &= "'" & email & "'"
    ' Ouverture de la connexion
    oConnection.Open()
     
    ' Traitement des opération à effectuer sur la base de données
     
    ' Cration de l'objet SqlCommand
     Dim oCommand As SqlCommand 
    oCommand = New SqlCommand(sql, oConnection)
     
     ' Lecture des donnes
    Dim odatareader As SqlDataReader
    odatareader = cmd.ExecuteReader()
     
    ' Fermeture de la connexion
    oConnection.Close()
     
    ' Fermeture du DataReader et de la connexion
     odatareader.Close()
     oConnection.Close()
    j'espere t'avoir aider

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Merci beaucoup de ton aide c'est vraiement très sympat à toi.

    Malheureusement cela me provoque une erreur :

    Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

    Compiler Error Message: BC30002: Type 'SqlCommand' is not defined.

    Line 33:
    Line 34: ' Cration de l'objet SqlCommand
    Line 35: Dim oCommand As SqlCommand
    Line 36: oCommand = New SqlCommand(sql, oConnection)
    Line 37:

    Sais-tu pourquoi ?!

    Merci encore de ton aide et de ta patience !!

    ERRATUM :
    J'ai trouvé je n'avais pas importé l'espace de nom c'est chose faite !!

  7. #7
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    Citation Envoyé par robertolami
    A ce jour mon code est :
    ' Déclaration de l'objet de connexion
    Dim oConnection As System.Data.SqlClient.SqlConnection
    Vu que dans ton code n'utilises pas de using/Import, tu dois typer en donnant le "chemin" complet, à savoir System.Data.SqlCommand.

  8. #8
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    neptune a toutafait raison
    pour qu'on soit plus clair

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     Dim oCommand As System.Data.SqlClient.SqlCommand 
    oCommand = New SqlCommand(sql, oConnection)
     
     ' Lecture des donnes
    Dim odatareader As System.Data.SqlClient.SqlDataReader
    odatareader = cmd.ExecuteReader()
    bon courage

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Encore un problème (le dernier je pense :


    Il me dit que cmd n'est pas déclaré (ce qui est vrai), mais comment le déclarer ?!

    Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

    Compiler Error Message: BC30451: Name 'cmd' is not declared.


    Line 40: ' Lecture des donnes
    Line 41: Dim odatareader As SqlDataReader
    Line 42: odatareader = cmd.ExecuteReader()
    Line 43:
    Line 44: ' Fermeture de la connexion


    Merci encore

  10. #10
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    désole
    c'est plutot "oCommand" et non pas "cmd"

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    C'est ce que je me ,suis dit, mais dans ce cas voici l'erreur (et comme il y a erreur je me suis dit c'est pas ça) :

    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

    Source Error:


    Line 23: Dim sConnectionString As String
    Line 24: sConnectionString = "Server=xxxxx;Initial Catalog=xxxxx;uid=xxxxx;password=xxxxx"
    Line 25: oConnection.ConnectionString = sConnectionString
    Line 26:
    Line 27: 'requete sql


    ?!! je déprime avec ce asp.net

    Merci encore !

  12. #12
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    je croix que tu dois ajouter le "NEW" comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Déclaration de l'objet de connexion
    Dim oConnection As New System.Data.SqlClient.SqlConnection

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    ALLELOUYA (je sais pas comment ça s'écrit) !!!


    J'ai ENFIN une page blanche (la première fois que j'en veux une comme ça


    Merci bcp de votre aide, de votre patience et de votre réactivité !!!!


    Je vais (peut-être) me mettre à ce labgage maintenant


    Merci encore !!!!!

  14. #14
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    J'ai encore une question sur un truc que je ne comprends pas.

    Je veux faire

    1. Un Select pour voir si le mail existe déjà ou pas dans ma bdd
    2. S'il n'existe pas je crée la ligne avec mes données.

    Je vais donc avoir 2 connexions à faire à ma BDD, et je n'arrive pas a réutiliser la connexion, j'ai un message d'erreur : hides a variable in an enclosing block.

    J'ai donc dû écrire 2 lignes de connexions, mais le jour où j'en ai 30 ?! Il y a forc"ment un truc que je ne saisie pas... Mon code (en entier oui oui :

    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
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
     
    <%@ Import Namespace="System.Data.SqlClient" %>
    <%@ Import Namespace="System.Data" %>
    <%
        Dim nom = Request.Form("nom")
        Dim prenom = Request.Form("prenom")
        Dim adresse = Request.Form("adresse")
        Dim cp = Request.Form("cp")
        Dim ville = Request.Form("ville")
        Dim tel = Request.Form("tel")
        Dim email = Request.Form("email")
        Dim chiot = Request.Form("chiot")
        Dim datechiot = Request.Form("datechiot")
        Dim chaton = Request.Form("chaton")
        Dim datechaton = Request.Form("datechaton")
        Dim codebarre = Request.Form("cb")
        Dim optin = Request.Form("optin")
     
        Dim pointeur = 0
        Dim isMail = ""
     
        'Déclaration de l'objet de connexion
        Dim oConnection As New System.Data.SqlClient.SqlConnection
     
        ' Ecriture de la chaîne de connexion
        Dim sConnectionString As String
        sConnectionString = "Server=xxx.xxx.xxx.xxx;Initial Catalog=xxx;uid=xxx;password=xxx"
        oConnection.ConnectionString = sConnectionString
     
        'requete sql
        Dim sql As String
        sql = "SELECT nom FROM participants WHERE email="
        sql &= "'" & email & "'"
        ' Ouverture de la connexion
        oConnection.Open()
     
        ' Traitement des opération à effectuer sur la base de données
     
        ' Cration de l'objet SqlCommand
        Dim oCommand As SqlCommand
        oCommand = New SqlCommand(sql, oConnection)
     
        ' Lecture des donnes
        Dim odatareader As SqlDataReader
        odatareader = oCommand.ExecuteReader()
     
        Do While odatareader.Read()
            isMail = odatareader(0)
        Loop
     
        ' Fermeture de la connexion
        'oConnection.Close()
     
        ' Fermeture du DataReader et de la connexion
        odatareader.Close()
        oConnection.Close()
     
     
     
        If isMail <> "" Then ' SI LE MAIL EXISTE ON MET LE POINTEUR A 1 
            pointeur = 1
        Else ' LE MAIL N'EXISTE PAS ON LE CREE DANS LA BDD
            Dim dateinscription = DateTime.Now
     
            Dim sql2 As String
            sql2 = "INSERT INTO particpants (nom,prenom,adresse,cp,ville,tel,email,chiot,datechiot,chaton,datechaton,codebarre,optin,dateinscription)"
            sql2 &= " VALUES ("
            sql2 &= "'" & nom & "',"
            sql2 &= "'" & prenom & "',"
            sql2 &= "'" & adresse & "',"
            sql2 &= "'" & cp & "',"
            sql2 &= "'" & ville & "',"
            sql2 &= "'" & tel & "',"
            sql2 &= "'" & email & "',"
            sql2 &= "'" & chiot & "',"
            sql2 &= "'" & datechiot & "',"
            sql2 &= "'" & chaton & "',"
            sql2 &= "'" & datechaton & "',"
            sql2 &= "'" & codebarre & "',"
            sql2 &= "'" & optin & "',"
            sql2 &= "'" & dateinscription & "')"
     
     
            'Déclaration de l'objet de connexion une seconde fois?!
            'Je n'arrive pas à réutiliser ma connexion précédente
            Dim oConnection2 As New System.Data.SqlClient.SqlConnection
     
            ' Ecriture de la chaîne de connexion
            Dim sConnectionString2 As String
            sConnectionString2 = "Server=xxxx;Initial Catalog=xxx;uid=xxxx;password=xxxx"
            oConnection2.ConnectionString = sConnectionString
     
            ' Ouverture de la connexion
            oConnection2.Open()
     
            ' Cration de l'objet SqlCommand
            Dim oCommand2 As SqlCommand
            oCommand2 = New SqlCommand(sql2, oConnection2)
            oCommand2.ExecuteNonQuery()
            oConnection2.Close()
            pointeur = 0
        End If 
    %>
    Bon il manque les try etc... Mais la base est là en tout cas

    merci encore de votre aide !

  15. #15
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    salut,
    si tu declare ta connexion public, je croix que tu pouras l'utiliser autant de fois que tu le désire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        'Déclaration de l'objet de connexion
        Public oConnection As New System.Data.SqlClient.SqlConnection
    public au lieu de dim, c'est ce que je fais moi , et ça marche nikle

  16. #16
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    Ok, je ne savais pas que Dim était du type private et je n'y ai même pas pensé !!

    Merci de ton aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 10/04/2008, 10h11
  2. requet un peu special ! comment faire?
    Par saim.mohamed dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/12/2007, 22h26
  3. Réponses: 1
    Dernier message: 10/01/2007, 09h39
  4. [SQL Server 2000] comment faire ?
    Par LeNeutrino dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/12/2006, 22h36
  5. [Sql server 2005] Comment faire des taches planifiées?
    Par critok dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 31/05/2006, 12h19

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