Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1328 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Access] Renseigner le sexe de la personne

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Access] Renseigner le sexe de la personne

n°1674314
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 12:17:19  profilanswer
 

Bonjour,
 
Quel type de champ utiliser pour le renseignement du sexe de la personne ?
Le plus utile par la suite.
 
Merci par avance


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
mood
Publicité
Posté le 21-01-2008 à 12:17:19  profilanswer
 

n°1674323
kadreg
profil: Utilisateur
Posté le 21-01-2008 à 12:26:17  profilanswer
 

INTEGER ?


Message édité par kadreg le 21-01-2008 à 12:26:28
n°1674338
MagicBuzz
Posté le 21-01-2008 à 12:43:49  profilanswer
 

booléen me semble amplement suffisant :o
 
à moins que tu ne veuilles gérer aussi les transexuels...

n°1674441
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 14:33:27  profilanswer
 

En booléen, je peux mettre F ou H ?
Comment dois je procéder ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674455
FlorentG
Unité de Masse
Posté le 21-01-2008 à 14:42:53  profilanswer
 

Tu peux mettre true ou false... Donc suffit de mapper gonzesse sur true, et mec sur false

n°1674459
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 14:47:32  profilanswer
 

Comment fait-on pour attribuer un mot à vrai et à faux ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674462
MagicBuzz
Posté le 21-01-2008 à 14:49:56  profilanswer
 

je crois qu'il y a du boulot là... :sweat:

n°1674472
FlorentG
Unité de Masse
Posté le 21-01-2008 à 14:53:38  profilanswer
 

Ouaip :( Sinon un entier, avec 0 = mec, 1 = nana. Comme ça on peut rajouter des types de sexe (inconnu, shemale, etc.), et ça peut facilement se mapper sur un groupe d'options ou sur une liste de sélection

n°1674478
MagicBuzz
Posté le 21-01-2008 à 14:55:43  profilanswer
 

ou alors tu mets un varchar(50) et dedans tu peux écrire :
 
"féminin"
"masculin"
"indéterminé"
"indéterminable"
"autre"
"n'habite plus à cette adresse"
"pas trop souvent"
"de bonne taille"
"ceci ne vous regarde pas"
etc.
 
:spamafote:

n°1674479
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 14:56:21  profilanswer
 

oui voilà je vais faire comme ca, car il y a effectivement des inconnus.
Merci


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
mood
Publicité
Posté le 21-01-2008 à 14:56:21  profilanswer
 

n°1674482
MagicBuzz
Posté le 21-01-2008 à 14:58:06  profilanswer
 

inconnu en tant normal, c'est la valeur "null" (et non le texte "null" )...

n°1674494
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 15:06:52  profilanswer
 

mon problème dans ce cas, c'est que je travail sur une base déjà présente, il y a déjà des personnes de sexe inconnu.
Et avec une requête de mise à jour, je ne peux pas attribuer null à quelqu'un d'inconnu, ca me met faux. Or pour les hommes je met vrai et pour les femmes je met faux


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674495
MagicBuzz
Posté le 21-01-2008 à 15:07:48  profilanswer
 

si, avec une requête, tu peux sans problème mettre NULL dans un type booléen...

n°1674500
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 15:10:54  profilanswer
 

Ah !
ma requête n'est pas bonne alors :

Code :
  1. update  accueil_contact
  2. set sexe1= null
  3. where sexe="inconnu";


 
j'ai fait pareil pour homme et femme et ca marche mais là ca me met faux, comme les femmes


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674511
MagicBuzz
Posté le 21-01-2008 à 15:27:23  profilanswer
 

(je corrige ce que j'ai dis)
 
tu peux mettre NULL à un champ booléen SAUF avec Access, qui ne sait pas rendre null un champ de ce type :heink:
 
je viens de vérifier, et effectivement pour lui c'est pas nullable comme champ, c'est 0 ou 1, et pas autrechose
 
donc un entier me semble une bonne solution alternative...
 
utiliser un autre SGBD me semble une alternative encore meilleure :D


Message édité par MagicBuzz le 21-01-2008 à 15:31:19
n°1674522
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 15:30:44  profilanswer
 

c'est ce que j'ai remarqué oui.
Donc du coup j'ai 0 pour inconnu, 1 pour homme et 2 pour femme.
 
Merci


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674524
MagicBuzz
Posté le 21-01-2008 à 15:31:57  profilanswer
 

Avec SQL Server en tout cas à ça marche bien :

Code :
  1. CREATE TABLE saiske
  2. (
  3.  id numeric PRIMARY KEY NOT NULL,
  4.  nom varchar(20) NOT NULL,
  5.  sexe bit NULL
  6. );
  7. go
  8.  
  9. INSERT INTO saiske (id, nom, sexe) VALUES (1, 'MagicBuzz', 1);
  10. INSERT INTO saiske (id, nom, sexe) VALUES (2, 'MissBuzz', 0);
  11. INSERT INTO saiske (id, nom, sexe) VALUES (3, 'Harko', NULL);
  12.  
  13. SELECT * FROM saiske;



 
(1 ligne(s) affectée(s))
 
(1 ligne(s) affectée(s))
 
(1 ligne(s) affectée(s))
id                                      nom                  sexe
--------------------------------------- -------------------- -----
1                                       MagicBuzz            1
2                                       MissBuzz             0
3                                       Harko                NULL
 
(3 ligne(s) affectée(s))

n°1674528
MagicBuzz
Posté le 21-01-2008 à 15:35:49  profilanswer
 

PS : Au risque d'être un peu lourd...
 
Vu que de toute façon ça marche pô, autant y aller franchement...
 
Moi j'utiliserais plutôt un char(1) pour stocker du coup :
 
"M"/"F" et " " pour inconnu. l'intérêt c'est que ça parle tout de suite quand t'as la table sous les yeux. parceque là, au premier coup d'oeil on sait pas quel chiffre correspond à quoi.

n°1674539
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 15:46:34  profilanswer
 

Bon j'ai fait comme tu as dit finalement.
 
Après dans le formulaire de saisie, si je veux mettre une case à cocher pour renseigner ce champ, c'est possible de mettre 3 cases à cocher pour Homme, Femme et inconnu ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674545
MagicBuzz
Posté le 21-01-2008 à 16:00:10  profilanswer
 

3 solutions :
- Une case à cocher : non coché = "F", coché = "M", moitié-coché = " ", si Access supporte une case à cocher à 3 états
- Trois radio boutons : F, M et vide (l'avantage des boutons radio, c'est qu'on ne peut pas avoir plusieurs valeurs en même temps)
- Liste déroulante avec 3 options
 
Eventuellement, une 4° solution, une case de texte libre, mais t'es pas à l'abrit qu'une personne saisisse "H" par exemple

n°1674552
Pascal_B
Posté le 21-01-2008 à 16:11:29  profilanswer
 

MagicBuzz a écrit :

booléen me semble amplement suffisant :o
 
à moins que tu ne veuilles gérer aussi les transexuels...


 
 :lol: Perso j'utilise le type ENUM avec '0','1' ou 'F','M'.... 1 Pour le mec et 0 pour la nana... c'est une astuce mnémotechnique  :D  
 
 

Spoiler :

Astuce... très imagée


 
Par contre, je sais plus si un équivalent d'ENUM existe en Access  :o


Message édité par Pascal_B le 21-01-2008 à 16:16:11
n°1674574
MagicBuzz
Posté le 21-01-2008 à 16:27:23  profilanswer
 

Oui y'a un équivalent : on peut spécifier une liste de valeur dans Access, mais ce n'est pas vraiment le même comportement.
C'est plutôt une contrainte sur le champ qu'un type à part.

n°1674585
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 16:41:16  profilanswer
 

ok, j'vais utiliser les radios boutons dans ce cas là.
les radios boutons, via l'assistant me propose seulement de mettre des valeurs numériques, or dans ma table c'est char(1).
 
je chanque en numérique du coup ?
Ou il y a une autre solution ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674586
MagicBuzz
Posté le 21-01-2008 à 16:43:58  profilanswer
 

honnêtement, je trouve la liste déroulante bien plus pratique, et ça prend moins de place à l'écran

n°1674592
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 16:47:06  profilanswer
 

La place sur l'écran ne sera pas un problème, surtout, il faut que lors de la saisie, ca soit le plus rapide, si possible tout au clavier ...


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674594
MagicBuzz
Posté le 21-01-2008 à 16:48:51  profilanswer
 

4rocky4 a écrit :

La place sur l'écran ne sera pas un problème, surtout, il faut que lors de la saisie, ca soit le plus rapide, si possible tout au clavier ...


ça tombe bien :
TAB pour avoir le focus sur le champ
Et "M", "F", ou "I" au clavier va directement sélectionner la valeur qui commence par cette lettre. On ne peut pas faire plus rapide :)

n°1674611
4rocky4
à 50 cm de l'écran
Posté le 21-01-2008 à 17:03:39  profilanswer
 

ok bah parfait c'est bon :)


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674786
FlorentG
Unité de Masse
Posté le 22-01-2008 à 09:10:10  profilanswer
 

4rocky4 a écrit :

La place sur l'écran ne sera pas un problème, surtout, il faut que lors de la saisie, ca soit le plus rapide, si possible tout au clavier ...


En tous cas, même si t'as beaucoup de chemin à faire, tu te poses déjà les bonnes questions :jap:

n°1674792
4rocky4
à 50 cm de l'écran
Posté le 22-01-2008 à 09:23:39  profilanswer
 

En effet access et les bases de données, c'est pas mon truc :s
 
J'ai une autre question toujours à propos du formulaire mais pas sur le sexe de la personne, j'ouvre un autre sujet ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1674795
FlorentG
Unité de Masse
Posté le 22-01-2008 à 09:25:14  profilanswer
 

Comme tu veux, tu peux rester dans celui-là

n°1674797
4rocky4
à 50 cm de l'écran
Posté le 22-01-2008 à 09:34:51  profilanswer
 

je reste là alors.
 
Donc enfaite je fais un formulaire de saisie de contact.
j'ai donc maintenant toutes les informations que l'on me demande dedans, mais il faudrait que je traite les demande aussi dans ce formulaire.
 
un contact peut effectuer une ou plusieurs demande. (3 au maximum)
une demande peut être effectuer par aucun ou plusieurs contacts.
(un contact ne peut pas faire 2 fois la meme demande)
 
Dans ma base, j'ai donc fait une cim avec CONTACT, EFFECTUER et DEMANDE.
 
Dans le formulaire de saisie du contact, je voudrais que l'on puisse choisir le nombre de demandes que l'on a puis les entrer.  
 
Comment dois-je procéder ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1675085
4rocky4
à 50 cm de l'écran
Posté le 22-01-2008 à 14:49:34  profilanswer
 

:??:  
 
ne serait-il pas possible de mettre un bouton "demandé" puis de selectionner la demande que l'on désire grâce à une liste déroulante et que le code renvoye le numéro de la demande dans la table effectué ?


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
n°1675468
4rocky4
à 50 cm de l'écran
Posté le 23-01-2008 à 08:49:38  profilanswer
 

:??:


---------------
- Un con qui marche ira plus loin qu'un intellectuel assis -
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Access] Renseigner le sexe de la personne

 

Sujets relatifs
[ACCESS] Rqt multicritere export vers Excel[Access] Importation de fichier texte et perte des espaces
[Résolu] PB pour enregistrer des données dans la BSD ACCESS avec VBA[Access - SQL] Count sur plusieurs tables
[Access] Modification d'une base de donnéesProblème Stockage dans une table access
créer des formulaires sur ACCESS[Access] Requête de requête
[access] récupérer des informtions tirées d'une page internetProblème de requête d'insertion IIS/Access/ASP
Plus de sujets relatifs à : [Access] Renseigner le sexe de la personne


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR