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 :

Nom du parametre: args


Sujet :

VB.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut Nom du parametre: args
    bonjour,

    j'ai un soucis incompréhensible,j'ai cette ligne de code qui marché tres bien jusqu'a maintenant, et aujoud' hui elle me donne ce message d'erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SQLstr = String.Format("INSERT INTO {0} (ChmAccesVideo,Etiquettes) VALUES ('" & Recherche_AVI.Text & "','" & isole_nom(Etiquettes) & "') ", basdef)
    La valeur ne peut pas être null.
    nom du parametre: args

    quelqu'un peut m'aiguiller sur ce problème?

    merci

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Par défaut
    Déjà change ta requete pour utiliser des requetes parametrées.

    Ensuite es tu sur que Recherche_AVI.Text, isole_nom(Etiquettes) et basdef sont différents de nothingou "".
    Pour vérifier pose un point d'arrêt et un espion sur ces trois variables.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    Bonjour,

    Effectivement j'Ai déclaré
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim basdef as string=nothing
    Mais jusqu à maintenant je n avais aucun soucis,le fait de ne pas le mettre en nothing,j ai un avertissement me disant:
    la variable 'basdef' est utilisé avant qu'une valeur ne lui ai été assignee.une exception de référence null peut se produire au moment de l exécution

  4. #4
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim basdef as string=String.empty
    A la place de nothing essaye ça

  5. #5
    Membre éclairé Avatar de anasschiguer
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2013
    Messages : 35
    Par défaut
    Bonjour, insert into est suivi par le nom de la table, et toi tu viens de préciser que basdef= nothing, comment est possible que tu aie une table qui est nommée "" ???
    c'est ca la source de l'erreur, le paramètre args , c'est la partie ", basdef)" de ta fonction : String.Format(Format As String,args() As Object)

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    Comment faut il que je déclare basdef pour ne plus avoir erreur?

  7. #7
    Membre éprouvé Avatar de Razorflak
    Homme Profil pro
    Développeur Flex/AS3
    Inscrit en
    Juin 2013
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Flex/AS3
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2013
    Messages : 97
    Par défaut
    Il faut que tu donne a basdef le nom de la table dans la quelle tu veut insérer t'es donné.

    Sinon, renseigne toi quand même sur les requête paramétré, car c'est très dangereux de faire les requête de cette manière.

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    en fait je renseigne auparavant mon basdef de cette maniere ,j'ai 80 ligne de ce type ou basdef prend le nom d'une table differente.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Case Me.1.Checked And Me.2.Checked          
           basdef = "Table_1"
    ce que je ne comprend pas c'est que jusqu'a maintenant cela fonctionné tres bien!!!

  9. #9
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    A toi de tester les lignes qui sont censées affecter basdef. Fais du pas-à-pas pour vérifier que les conditions soient remplies permettant l'affectation de basdef.

    [Avis Perso]Si c'est bien ce que je pense, c'est atroce 1 et 2 comme nom de control (Checkbox) ... [/Avis Perso]

  10. #10
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    625
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 625
    Par défaut
    j'ai mis 1 et 2 pour remplacer leur nom d'origine pour etre au plus simple.
    si je garde :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dim basdef as string= string.empty
    j'ai une erreur de synthaxe dans l'instruction INSERT INTO

  11. #11
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    Que ce soit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim basdef as string= string.empty
    'ou
    dim basdef as string= Nothing
    N'est pas le problème, ici c'est ta valeur initiale, pas celle qu'il doit y avoir dans la requête. C'est à toi de voir pourquoi lorsque tu executes ta requête basdef a toujours sa valeur initiale alors qu'on théorie tu aurais dû lui affecter une "vraie" valeur ...

  12. #12
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,
    Citation Envoyé par chuspyto Voir le message
    en fait je renseigne auparavant mon basdef de cette maniere ,j'ai 80 ligne de ce type ou basdef prend le nom d'une table differente.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Case Me.1.Checked And Me.2.Checked          
           basdef = "Table_1"
    ce que je ne comprend pas c'est que jusqu'a maintenant cela fonctionné tres bien!!!
    Ben jusqu'a présent vous deviez avoir des cas prévu, mais maintenant vous avez un cas non défini dans les Case, normalement il doit passer dans le Case Else, mais si vous ne faite rien il il continue sans affectation pour votre variable "basdef" et part en erreur.
    Il faut traiter les cas non prévu et ne pas faire les traitements de BDD, signaler l'erreur à l'utilisateur pour qu'il repositionne ses choix avec une table existante. (Après sans le code complet, difficile de savoir exactement ce qui se passe)
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

Discussions similaires

  1. Ninject Constructeur sans le nom du parametre
    Par mariox dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 05/10/2012, 09h34
  2. Réponses: 70
    Dernier message: 21/07/2008, 17h54
  3. Recuperation du nom des parametres
    Par Sebastien_INR59 dans le forum Général Java
    Réponses: 16
    Dernier message: 13/10/2007, 23h28
  4. forms![nom formulaire]! parametres
    Par Lourpiop dans le forum IHM
    Réponses: 3
    Dernier message: 30/05/2007, 10h20
  5. Réponses: 1
    Dernier message: 04/04/2007, 06h12

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