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

Linq Discussion :

Mettre un NULL sur une cle secondaire


Sujet :

Linq

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 61
    Par défaut Mettre un NULL sur une cle secondaire
    Bonjour ,

    J'ai une procedure stockée qui me permet d'inserer des éléments dans une table

    Cette table contient des cles secondaire de type INT.

    Parfois certaines cles secondaires sont à NULL mais je ne peux pas envoyer par parametre un NULL dans INT (ce que je comprends) mais alors comment faire ?

    Quand j'execute ma prostock dans sql avec des null cela ne pose pas de problemes.
    Je suis en sql server2005 WPF et linq . 3.5

    Est ce que quelqun a deja eu le meme probleme ?

  2. #2
    Membre expérimenté
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2008
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Février 2008
    Messages : 159
    Par défaut
    Essaye de lui passer DBNull.Value au lieu de null

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 61
    Par défaut
    J'ai tout essayé , meme avec sqldbtype , rien a faire
    dans la logique on ne peut pas mettre un null dans int mais si je mets
    null comme ca dans mes parametres ca marche
    Le fait est que je ne peux pas le mettre dans une variable int
    Si je mets dans un String j'ai des probleme de conversion , en effet il ne peut pas convertir un NULL en INT.

    Jai une prostock ou j'envoie des param INT par variable et impossible dans ce cas de mettre NULL.Et c'est ce qu'il faudrait que je mette
    Car si je mets 0 ou Int.MinValue , comme c'est une cle secondaire evidemment il ne trouve pas de correspondance.

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Am34000 Voir le message
    Jai une prostock ou j'envoie des param INT par variable et impossible dans ce cas de mettre NULL.Et c'est ce qu'il faudrait que je mette
    Car si je mets 0 ou Int.MinValue , comme c'est une cle secondaire evidemment il ne trouve pas de correspondance.
    C'est un peu bizarre car une proc stoc mappée avec Linq To Sql doit exposer un paramètre "int?" c'est à dire un int "nullable".

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    61
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 61
    Par défaut
    Oui c'est le cas si je mets null en toute lettre ca marche mais pas dans une variable ,
    je ne pense meme pas que cela a un rapport linq mais plutot avec
    l'envoi de parametres et de conversion de type

    Coment dire a une variable int qu'elle est nullle et que la prostock doit la recevoir comme ca , c'est ca le truc en fait.

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Citation Envoyé par Am34000 Voir le message
    Oui c'est le cas si je mets null en toute lettre ca marche mais pas dans une variable ,
    Pas dans une variable ? une variable de quel type ?

    je ne pense meme pas que cela a un rapport linq mais plutot avec
    l'envoi de parametres et de conversion de type
    Je pense au contraire que cela a à voir avec ta déclaration de variable où tu utilises des types non nullable.

    Style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int a = null; // marche pas et pour cause
    int? b = null; // marche
    Coment dire a une variable int qu'elle est nullle et que la prostock doit la recevoir comme ca , c'est ca le truc en fait.
    Comme mentionné : avec le '?' en suffixe de type sur des types "value".

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

Discussions similaires

  1. Affichage d'une image sur une fenêtre secondaire.
    Par renorx dans le forum Composants VCL
    Réponses: 3
    Dernier message: 03/01/2006, 19h06
  2. [SYBASE ASE] Rajouter une contrainte null sur une colonne
    Par Little_Goldo dans le forum Sybase
    Réponses: 1
    Dernier message: 09/02/2005, 10h48
  3. Mettre du texte sur une vidéo(ou par dessus un tmediaplayer)
    Par souch dans le forum Composants VCL
    Réponses: 9
    Dernier message: 08/07/2004, 13h30
  4. Contraite NULL sur une colonne en fonction d'une autre colon
    Par speedy1496 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 25/04/2004, 19h29
  5. Comment mettre un label sur une image
    Par dug dans le forum MFC
    Réponses: 3
    Dernier message: 07/04/2004, 10h40

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