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

Bases de données Delphi Discussion :

Équivalent Paradox de IsNull


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite Avatar de slimjoe
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2005
    Messages : 647
    Par défaut Équivalent Paradox de IsNull
    Bonjour!

    Lorsque je travaille sur des bases de données MS-SQL, j'utilise régulièrement la fonction IsNull qui retourne une valeur par défaut si le champ spécifié est NULL.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    --Si MonChamp est NULL, la requête retourne 0 sinon, elle retourne la valeur de mon champ
    SELECT IsNull(MonChamp, 0) FROM MaTable
    Ma question est simple : existe-t-il un équivalent à ça en Paradox ?

    Pour l'instant, je dois patcher en utilisant la particularité de Paradox qui voit les champ NULL comme des chaînes vides mais, vous en conviendrez, ce type de code est un peu douteux .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT CAST(CAST('0' + MonChamp AS VarChar(20)) AS FLOAT) FROM MaTable

    Pouvez-vous m'aider ?

    Merci !

    -Slimjoe

  2. #2
    Membre Expert
    Avatar de NoisetteProd
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    1 905
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 905
    Par défaut
    http://sql.developpez.com/null/#L2.2 par ici la lumière ??

  3. #3
    Membre émérite Avatar de slimjoe
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2005
    Messages : 647
    Par défaut
    Citation Envoyé par NoisetteProd
    http://sql.developpez.com/null/#L2.2 par ici la lumière ??
    Merci mais c'est encore aussi obscur . Paradox est un SGDB assez limité et aucune des fonctions que j'ai testé (IsNull, Coalesce, Case/When) ne semble être supportée.

    Merci encore pour la suggestion

  4. #4
    Membre Expert
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 543
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 543
    Billets dans le blog
    10
    Par défaut
    Paradox ne gére pas le vide. Donc un nombre non utilisé aura la valeur 0 et une zone alphanumérique non utilisée sera égale à une chaîne vide. Ceci dit en fonction du besoin on peut trouver des solution pour palier à cette carence.

  5. #5
    Membre émérite Avatar de slimjoe
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2005
    Messages : 647
    Par défaut
    Citation Envoyé par ALWEBER
    Paradox ne gére pas le vide. Donc un nombre non utilisé aura la valeur 0 et une zone alphanumérique non utilisée sera égale à une chaîne vide. Ceci dit en fonction du besoin on peut trouver des solution pour palier à cette carence.
    Salut!
    Tout d'abord, ceci constitue mon 100e post alors célébrons :


    Maintenant pour les choses sérieuses...

    Paradox ne gére pas le vide.
    Je joue déjà sur cette propriété en transtypant la colonne en VarChar et en lui appliquant un zéro non significatif dans l'exemple que j'ai fourni. Ma question est plus de savoir s'il existe un moyen plus propre.

    D'autre part, j'ai aussi lu une ligne semblable sur un autre forum:

    Donc un nombre non utilisé aura la valeur 0 et une zone alphanumérique non utilisée sera égale à une chaîne vide.
    Personellement, je ne crois pas que Paradox réagisse vraiment de cette manière.

    En effet, même pour un champ numérique, Paradox semble stocker une chaîne vide pour le NULL et non un 0 comme le semble croire plusieurs personnes. Je me trompe peut-être remarquez (ça ne serait pas la 1ère fois ). Toutefois, je sais que si on lit un NULL avec la méthode Delphi AsInteger, on va avoir un 0. Là, c'est Delphi qui fait la conversion et non Paradox. Si on lit la même valeur avec AsString, on a une chaîne vide.

    Mais merci quand même pour le commentaire. Ils sont tous appréciés .

  6. #6
    Membre Expert
    Avatar de ALWEBER
    Homme Profil pro
    Expert Delphi
    Inscrit en
    Mars 2006
    Messages
    1 543
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Expert Delphi

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 543
    Billets dans le blog
    10
    Par défaut
    Je viens de faire un petit test tu as raison le vide existe donc bien et donc un requête du type suivant fonctionne très bien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT DISTINCT * FROM "t1.DB" WHERE (V2 IS NULL)

Discussions similaires

  1. Équivalent de IsNull
    Par NeedToHelp dans le forum Cobol
    Réponses: 3
    Dernier message: 01/03/2013, 14h16
  2. taille maximale d'une base de donnée paradox
    Par Anonymous dans le forum Paradox
    Réponses: 5
    Dernier message: 14/02/2004, 17h39
  3. SQL et Paradox
    Par littleman dans le forum Paradox
    Réponses: 2
    Dernier message: 26/08/2002, 17h02
  4. Multi-acces a la BD Paradox
    Par _Rico_ dans le forum Paradox
    Réponses: 3
    Dernier message: 22/07/2002, 15h33
  5. paradox vs dbase ?
    Par do dans le forum Paradox
    Réponses: 3
    Dernier message: 05/06/2002, 10h10

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