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 :

SELECT.. FROM.. WHERE.. AND.. AND.. !


Sujet :

VB.NET

  1. #1
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut SELECT.. FROM.. WHERE.. AND.. AND.. !
    bonjour,

    je souhaiterais faire un SELECT conditionnel avec 3 conditions.

    en 1er je sélectionne des élément d'une table.
    en 2ème j'exécute un Test pour savoir si l'enregistrement existe dans la table
    en 3ème s'il n'existe pas je l'enregistre dans la new table.

    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
     
        Public Sub selectAxeRUN()
     
            ObjetCommand.CommandText = "SELECT * FROM Axes WHERE ftp=No AND statut=" & Chr(34) & "New" & Chr(34) & ""
     
            Dim myREADERnoFTP As OleDbDataReader = ObjetCommand.ExecuteReader()
     
            Do While myREADERnoFTP.Read()
     
                ObjetCommand1.CommandText = "SELECT Nom_client, Num_client, Nom_axe FROM Axes1 WHERE ((Nom_client = @Nom_client) AND (Num_client = @Num_client) AND (Nom_axe = @Nom_axe));"
                ObjetCommand1.Parameters.Add("@Nom_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(1).ToString()
                ObjetCommand1.Parameters.Add("@Num_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(2).ToString()
                ObjetCommand1.Parameters.Add("@Nom_axe", OleDbType.VarChar).Value = myREADERnoFTP.Item(3).ToString()
     
                Dim resultat As String = ObjetCommand1.ExecuteScalar
     
                If resultat = Nothing Then
                    ObjetCommand2.CommandText = " INSERT INTO [Axes1] ( Nom_client, Num_client, Nom_axe, FDC_mini, FDC_maxi, statut, ftp )  VALUES ( @Nom_client, @Num_client, @Nom_axe, @FDC_mini, @FDC_maxi, @statut, @ftp );"
                    ObjetCommand2.Parameters.Add("@Nom_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(1).ToString()
                    ObjetCommand2.Parameters.Add("@Num_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(2).ToString()
                    ObjetCommand2.Parameters.Add("@Nom_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(3).ToString()
                    ObjetCommand2.Parameters.Add("@Num_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(4).ToString()
                    ObjetCommand2.Parameters.Add("@Nom_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(5).ToString()
                    ObjetCommand2.Parameters.Add("@Num_client", OleDbType.VarChar).Value = "AJ"
                    ObjetCommand2.Parameters.Add("@Nom_client", OleDbType.Boolean).Value = True
     
                    ObjetCommand2.ExecuteNonQuery()
     
                Else
     
                End If
                resultat = Nothing
            Loop
     
            myREADERnoFTP.Close()
     
            ObjetConnection.Close()
        End Sub
    voici ma table :



    Le problème c'est que lorsque je fais le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT Nom_client, Num_client, Nom_axe FROM Axes1 WHERE ((Nom_client = @Nom_client) AND (Num_client = @Num_client) AND (Nom_axe = @Nom_axe));
    A la lecture, étape 1, il détecte bien qu'il n'y a pas de champs identique. il passe a l'étape 2 enregistre dans la table étape 3.

    puis lorsqu'il teste le 2ème élément il détecte qu'il existe ??? alors que ma condition est sur les 3 and pas que sur 1 seul, ma variable resultat = test
    WHERE ((Nom_client = @Nom_client) AND (Num_client = @Num_client) AND (Nom_axe = @Nom_axe))
    je ne pige pas ??

    pouvez vous m'orienter merci

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    je ne comprends pas ton explication
    quand je regarde le code j'ai l'impression que tu fais une erreur qu'on rencontre souvent : on ne parcours pas le résultat d'une requete pour faire x autres
    il faut faire une seule requete pour tout faire, c'est le principe d'une base de données

    il est par exemple possible de faire
    insert into T (c1, c2) select d1, d2 from T2
    on peut faire une grosse requete avec des where et autres selon le sgbdr
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    En fait j'ai une table local et une table en FTP que je copi, les champs de la table FTP sont lié dans la local, il faut que je compare les champs pour soit les rajouter ou les modifiés.

    les modifications peuvent se faire des deux coter !!!

    et avec une seule requête SQL je peux faire ça ?

    je veux bien voir

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    Citation Envoyé par tijote Voir le message
    En fait j'ai une table local et une table en FTP que je copi, les champs de la table FTP sont lié dans la local, il faut que je compare les champs pour soit les rajouter ou les modifiés.

    les modifications peuvent se faire des deux coter !!!

    et avec une seule requête SQL je peux faire ça ?

    je veux bien voir
    une table en ftp ?

    dans access on peut faire des tables liées, = mettre un lien vers une table d'une base A dans une base B, access s'occupe de faire transiter les données quand on interroge la table qui en fait n'est pas là
    à tenter ...
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    Oui j'ai une table en local et une table en FTP.

    il y a plusieurs utilisateurs qui remplissent la table. donc le principe est de remplir sa base local puis quand l'user le souhaite (surtout quand il le peu) il met a jour sa table. donc il copi la table FTP dans son Application.StartupPath puis l'application fais une comparaison des tables et met a jour les enregistrement selon la date.

    actuellement mon application fonctionne mais pas en SQL. si en SQL je récupère les valeurs et les mets dans plusieurs tableau a 2 dimensions après je fais un traitement de mise a jour et je remet tout la table FTP...

    ça fonctionne très bien.

    maintenant je ne souhaite pas passer par le tableau, simplement faire des appels et des traitement au fur et a mesure de ma requête SQL.

    voilà j'espère être clair.


    le problème que j'ai c'est sur cette requette :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                ObjetCommand1.CommandText = "SELECT Nom_client, Num_client, Nom_axe FROM Axes1 WHERE ((Nom_client = @Nom_client) AND (Num_client = @Num_client) AND (Nom_axe = @Nom_axe));"
                ObjetCommand1.Parameters.Add("@Nom_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(1).ToString()
                ObjetCommand1.Parameters.Add("@Num_client", OleDbType.VarChar).Value = myREADERnoFTP.Item(2).ToString()
                ObjetCommand1.Parameters.Add("@Nom_axe", OleDbType.VarChar).Value = myREADERnoFTP.Item(3).ToString()
    elle ne prend pas en compte mes 3 conditions, s'il y a un des champs qui correspond il le valide ?

    j'ai mofifié mon code tel qu'il est dans mon appli... je n'ai pas de variable

  6. #6
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    tu peux essayer de contourner en faisant :

    select d'une table => insert dans une collection
    select de l'autre table => insert dans une autre collection

    un (ou plusieurs) coup de linq pour avoir la liste des différences
    boucle
    => insert/update/delete
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    Ok dac, pourrais tu me fournir un exemple ? linq je connais pas du tout apres la je suis en frameworks 2 mais je pourrais passer au 3.5 pour linq...

    j'ai fais une formation chez eni service et au niveau de linq j'ai que les bases

  8. #8
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    En fait c'est ce que je faisais deja mais sans passer par linq.

    Apres je voulais travailler directement dans la table sans passer par autre chose

  9. #9
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    linq c'est juste qui permet de coder des boucles pour toi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    for each item in list
       item.une_sub
    next
     
    =>
     
    l.ForEach(New Action(Of itemType)(Sub(i As ItemType) i.une_sub))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    dim itemfiltres as new list(of item)
    for each item in list
      if item.propriete1 = "a" then itemfiltres.Add(item)
    next
     
    =>
     
    dim itemfiltres = (from i un list where i.propriete1 = "a" select i)
    linq est un peu comme du sql à écrire, ca permet de travailler sur les collections, on peut faire des jointures, du group by, du sum, du order by etc...

    donc si tu fais une classe avec le nom de la table, une propriété par colonne (typé comme il faut)

    tu remplies un dictionary(of typecle table, item représentant une ligne de la table)
    (enfin un pour chaque base)

    tu peux ensuite faire des trucs du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for each keyToAdd in dicoT2.keys.except(dicoT1.keys)
      dim i = dicoT2(keyToAdd)
      'insert into en prenant i.proprietes
    next
    .except retourne une collection dont les éléments en communs sont sortis
    dans un sens ca te donne les clés à ajouter, dans l'autres les clés sur lesquelles faire un delete
    avec .intersect ca te donne les clés à comparer
    et si tu implémentes l'opérateur = (ou icomparer je sais plus exactement) sur la classe tu peux avoir la liste des choses ayant une différence en une ligne de code écrire le code pour tester les propriétés

    après la programmation itérative, évènementielle et/ou objet, là on s'approche de la programmation fonctionnelle, on dit ce qu'on veut et ca se débrouille pour le code qui va avec
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  10. #10
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    ok merci du conseil, j'aimerais bien trouver aussi pourquoi cela ne fonctionne pas du coup ?

    et je vais me penchez sur linq

  11. #11
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    vu que je ne comprends pas ton explication du problème je ne peux pas t'en expliquer la cause ...
    et je ne suis pas spécialiste access, mais le peu que je l'ai utilisé j'ai eu pas mal de surprises qui m'ont posé des problèmes
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  12. #12
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    je viens de te faire une demande sur skype

  13. #13
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    Ha en fait c'est le
    ExecuteScalar
    qui fou la merde car lui il exécute la requête et retourne la première colonne de la première ligne du jeu de résultats retourné par la requête. Les colonnes ou lignes supplémentaires sont ignorées.

  14. #14
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    oui ca fait partie des choses que j'avais relevé
    executescalar retourne bien la 1ère colonne de la 1ère ligne
    sur sql server on aurait fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    if not exists (select 1 from table where condition)
       insert into table ...
    mais access n'accepte pas cette syntaxe, donc pour savoir si la ligne existe executescalar malgré une utilisation douteuse devrait quand même te donner l'info
    (si on veut tout on fait executereader)

    par contre il faudrait peut etre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if result is system.dbnull.value then
    car une base de données ne retourne pas des nothing
    c'est peut etre juste ca le problème d'ailleurs


    mais quand on a un problème on fait du debug en pas à pas pour regarder ce qui se passe, auquel cas tu aurais résolu le problème en voyant s'il y a effectivement un dbnull plutot que nothing
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  15. #15
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    Ne t’inquiète pas je fais des debugs.

    pour le "nothing" ca fonctionne pour ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim resultat As String = ObjetCommand1.ExecuteScalar
    maintenant pour le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim myREADERnoFTPverif As OleDbDataReader = ObjetCommand1.ExecuteReader()
    If myREADERnoFTPverif.ToString Is System.DBNull.Value Then
    je teste avec ça alors...

  16. #16
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    ca ne marche pas :
    "Aucune donnée n'existe pour la ligne/colonne."
    j'ai essayer ca aussi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                Dim myREADERnoFTPverif As OleDbDataReader = ObjetCommand1.ExecuteReader()
     
                If myREADERnoFTPverif.Item(1).ToString Is System.DBNull.Value Then
    dans les 2 cas j'ai des erreurs...

  17. #17
    Expert confirmé
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Points : 4 239
    Points
    4 239
    Par défaut
    Citation Envoyé par tijote Voir le message
    ca ne marche pas :

    j'ai essayer ca aussi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
                Dim myREADERnoFTPverif As OleDbDataReader = ObjetCommand1.ExecuteReader()
     
                If myREADERnoFTPverif(1).ToString Is System.DBNull.Value Then
    dans les 2 cas j'ai des erreurs...
    Avant de lire les données d'un DataReader, il faut d'abord vérifier si ce dernier contient des données.

    De mémoire, il y a la fonction HasRows pour ça.
    Kropernic

  18. #18
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    effectivement merci

  19. #19
    Membre régulier Avatar de jolona
    Homme Profil pro
    Technicien metodes
    Inscrit en
    Avril 2010
    Messages
    233
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien metodes
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2010
    Messages : 233
    Points : 104
    Points
    104
    Par défaut
    cela ne change rien, il lit bien la première ligne et des qu'il passe à la seconde il plante.

    je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     If myREADERnoFTPverif.HasRows Then
    bla bla
    pour le premier enregistrement ça marche, le HasRows retourne un false.
    pour la 2ème la condition il retourne un true

    j'ai l'impression qu'il n'execute pas correctement le where
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE ((Nom_client = @Nom_client) AND (Num_client = @Num_client) AND (Nom_axe = @Nom_axe))
    il y a que le champ axe qui change pour (les trois 1er enregistrement) un même client et un même numéro... puis après le client change de numéro et chaque numéro du client a 3 axes.

    la 1er ligne l'axe est = X et la 2eme l'axe = Y et 3 eme l'axe = Z...

    j'ai l'impression en fait que le myreader déconne sur la 2eme requête.

    j'ai mis une variable pour piégé et savoir ce que contient la requête et les valeur sont bonne mais j'ai l'impression qu'il me fait la requête sur le 1er myreader

  20. #20
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    Citation Envoyé par tijote Voir le message
    pour le "nothing" ca fonctionne pour ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim resultat As String = ObjetCommand1.ExecuteScalar
    encore un truc que j'avais pas v ; on ne peut pas écrire ca

    en fait vb étant la proie des débutants, par défaut il laisse écrire n'importe quoi, et certains développeurs écrivent donc n'importe quoi sans se poser de question

    le mieux c'est que tu ailles dans les paramètres du projet, et que tu mettes option strict on
    il va alors te souligner les erreurs de code que tu as fais, il ne te resteras plus qu'à te demander pourquoi ce sont des erreurs et corriger en conséquence (alors que ca peut marcher dans certains cas)
    quand c'est bien codé on a moins de surprises et on se pose moins de questions
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/09/2009, 12h41
  2. [COUNT] select ... from ... where count !
    Par tmcgrady dans le forum Langage SQL
    Réponses: 5
    Dernier message: 30/11/2007, 18h29
  3. probleme avec SELECT..FROM..WHERE
    Par VBBBA dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 08/09/2006, 16h58
  4. Pb de syntaxe sql : Sélection SELECT FROM WHERE vide
    Par oceanediana dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 31/07/2006, 16h54
  5. [hibernate][spring]requete select from where IN
    Par whilecoyote dans le forum Hibernate
    Réponses: 1
    Dernier message: 07/04/2006, 10h06

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