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

Langage SQL Discussion :

[MySQL] Champ de sélection années


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [MySQL] Champ de sélection années
    Bonjour tout le monde !

    Besoin d'un petit tuyau : dans ma base j'ai créé une table "annees" que je souhaite remplir (avec les années forcément )
    qui doit être appelée par un champ de sélection (pour éviter à l'utilisateur d'entrer l'année en brut)
    Mon petit souci : étant donné le nombre de valeurs à rentrer (de 1900 à 2006), n'y aurait-il pas plutot une fonction qui permette d'entrer des bornes min/max dans la requete SQL ?

    Merci !

    PS: je vais avoir le même souci pour les pays mais pour le coup je crois que je vais devoir me taper tout à la main... lol

  2. #2
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Je ne suis pas sûr d'avoir bien compris le souci :

    1. Si tu as besoin de limiter les valeurs de ton champ Annee, tu peux ajouter à ta requête une clause :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ...
       AND Champ_Annee BETWEEN 1900 AND 2006
    2. Si tu veux contrôller les saisies incorrectes, tu peux implémenter une contrainte CHECK
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE MaTable ADD CONSTRAINT MaTable_CK_Annee CHECK (Champ_Annee BETWEEN 1900 AND 2006);

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    eh non c'est pas tout à fait ça le souci, mais c'est pas grave je prends volontiers d'autres tuyaux

    alors en fait, sur ma page PHP, j'ai un champ "champ.annee" de type "SELECT" (menu déroulant) qui pointe vers ma table "annees".

    Le souci vient du fait qu'étant donné que je veux les années de 1900 à 2006, c'est assez lourd et long de rentrer les requêtes SQL pour chaque année du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    INSERT INTO annees VALUES ('', '1900');
    INSERT INTO annees VALUES ('', '1901');
    ...
    d'où mon interrogation : est-ce qu'il n'existe pas une commande SQL qui me permette de donner une borne inf et sup, afin d'éviter toutes ces commandes SQL pour rentrer les années !

    Voilou

    Merci beaucoup

  4. #4
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Et en PHP, tu ne sais pas faire une boucle ?

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    moi jeune padawan du PHP depuis une semaine
    alors vi je sais faire une boucle mais on va dire par chance, vu que c'est quasi la même syntaxe que pour le C.

    mais j'ai du mal pour rédiger les actions de la boucle.
    voui à priori il faut incrémenter +1 tant que la variable n'est pas égale à 2006 mais j'avoue que je suis complètement perdu !

  6. #6
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Fait une petite recherche dans les forums PHP, sur INSERT et Boucle

    Ex de résultat dans le forum PHP > Général PHP > SGBD :

    INSERT par boucle ?

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/07/2008, 22h40
  2. Debutant Mysql, CHAMP pointant n TABLES
    Par James_ dans le forum Débuter
    Réponses: 3
    Dernier message: 28/06/2007, 08h04
  3. [mysql]champ auto incremental
    Par rvfranck dans le forum Wildfly/JBoss
    Réponses: 3
    Dernier message: 01/10/2006, 09h01
  4. [MySQL] Champ 'NbPoints' inconnu dans field list
    Par ouiffi dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/07/2006, 08h03
  5. [SGBD] mysql & champs de texte
    Par chidink dans le forum Installation
    Réponses: 3
    Dernier message: 30/12/2005, 10h03

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