• Login:

Bienvenue sur Forum SIG - Systèmes d'Information Géographique et Géomatique.

Bienvenue sur le forumSIG. S'il s'agit de votre première visite, assurez vous de faire une recherche préalable dans les FAQ SIG. Vous devez vous inscrire avant de pouvoir poster.

Affichage des résultats 1 à 3 sur 3
  1. #1

    Date d'inscription
    juin 2017
    Localisation
    derrière toi
    Emploi
    chef de projet SIG
    Organisme
    Chez les fous!
    Âge
    40
    Messages
    14

    Par défaut désactiver la valeur par défaut "0" d'un champ integer en cas d'update

    Bonjour à tous,

    je rencontre un petit soucis... je travaille sur une base de données PostGIS (2.3) avec l'interface PgAdmin III.

    J'ai des champs de type integer qui peuvent être NULL (saisie non obligatoire donc).
    Lorsqu'une personne crée un objet, et qu'elle ne remplit pas tous les champs de type integer, ces derniers présentent bien la mention NULL après l'insert.
    Par contre si une autre personne vient faire un update sur cet objet (spatiale ou attributaire) et qu'elle ne remplit toujours pas les champs de type integer, ces derniers ne présentent plus la mention NULL mais se remplissent automatiquement avec un 0 (zéro) or j'aimerais que cela reste à NULL.
    J'imagine qu'en basculant les champs de type integer sur du character varying, je n'aurais pas ce problème mais le schéma est synchronisé avec un autre schéma où des calculs sont faits et ça créerait donc des bugs si je changeais les types.

    Auriez vous des solutions à m'apporter svp !?

  2. #2
    Chasseur de Bots
    Date d'inscription
    août 2011
    Localisation
    Paris > Strasbourg
    Emploi
    Chargé de mission SIG
    Âge
    35
    Messages
    1 496

    Par défaut Re : désactiver la valeur par défaut "0" d'un champ integer en cas d'update

    Est-ce que la valeur '0' dans ces champs correspond à une réalité ? Autrement dit, est-ce qu'une donnée mise à jour volontairement peut mettre un '0' dans ces champs et que cela soit juste ?
    Sinon, si la valeur '0' n'a aucun sens, je pense à un trigger AFTER UPDATE ..., mais ça n'est pas idéal.

    Si le '0' a une réalité, voir ce qu'il se passe du côté de l'application, pourquoi elle renvoie un '0' au lieu d'un NULL.

  3. #3

    Date d'inscription
    juin 2017
    Localisation
    derrière toi
    Emploi
    chef de projet SIG
    Organisme
    Chez les fous!
    Âge
    40
    Messages
    14

    Par défaut Re : désactiver la valeur par défaut "0" d'un champ integer en cas d'update

    En fait c'est une base de données connectée à un portail web carto Lizmap....
    Les utilisateurs peuvent faire des éditions en ligne et cela génère par le biais d'une fonction un mail automatique qui est envoyé à l'utilisateur et à l'administrateur sous forme de deux tableaux comparatifs (valeurs anciennes/valeurs nouvelles). Ainsi normalement seuls les champs qui ont été modifiés doivent être repris dans ces tableaux. Pourtant j'y retrouve à chaque fois tous les champs de type integer même si ces derniers sont restés vierges (ils passent de null à 0). (cf les 2 captures d'écran dans les messages suivants).
    En me renseignant, j'ai appris que la valeur par défaut d'un champ de type integer est 0. Je pensais que c'était plus à ce niveau qu'il fallait creuser mais peut être en effet est-ce au niveau de Lizmap... Je vais continuer de chercher une solution car en effet un trigger qui ferait un replace ne conviendrait pas car 0 peut être une valeur saisie dans ces champs de type integer.

    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		valeurs_anciennes.png 
Affichages :	14 
Taille :		11,3 Ko 
ID : 			9113
    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		valeurs_nouvelles.png 
Affichages :	14 
Taille :		13,5 Ko 
ID : 			9114

 

 

Discussions similaires

  1. [PostGreSQL] Sélection enregistrements selon valeur dans un champ "tableau"
    Par LaV dans le forum Assistance et Programmation
    Réponses: 2
    Dernier message: 30/08/2017, 15h51
  2. [ArcGIS 10.x] Ajouter la valeur "0" aux pixels "No Data" d'un Raster
    Par CarineC dans le forum Assistance Technique
    Réponses: 1
    Dernier message: 17/07/2014, 12h00
  3. Réponses: 3
    Dernier message: 26/10/2012, 09h32
  4. [Access] Forcer une saisie de type "ZZ9999" ou "Z9999" dans une champ d'Access
    Par Bescu dans le forum Assistance et Programmation
    Réponses: 17
    Dernier message: 02/09/2011, 14h52
  5. Réponses: 6
    Dernier message: 30/06/2010, 16h44

Les tags pour cette discussion

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •