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

Requêtes MySQL Discussion :

Créer une table qui ne contiendra qu'une seule ligne


Sujet :

Requêtes MySQL

  1. #1
    Candidat au Club
    Homme Profil pro
    Data Scientist
    Inscrit en
    Novembre 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Novembre 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Créer une table qui ne contiendra qu'une seule ligne
    Bonjour à tous.

    En fait, j'ai une base de données Mysql et je voudrais créer une table "liens" mais je veux que cette table ne contiennent qu'une seule ligne.

    Pour prendre un exemple sur la table liens(id, nom, type, date_insertion), elle contient (1, "www.google.fr" , "Moteur de recherche", 20/12/2016)

    Si je veux ajouter le site Youtube comme étant un service de visionnage de vidéo en streaming, avec la syntaxe INSERT INTO, ma table liens aura 2 lignes, or je ne veux conserver que l'information que je viens d'ajouter, dans mon cas

    (2, "www.Youtube.com", "Service de visionnage de videos en streaming", 10/08/2017).

    Quelqu'un aurait une idée de comment faire celà?

    J'utilise wampserveur64 et ma version de Mysql est 5.7.14

    Version de php: 5.6.25

    Merci d'avance

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

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

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 778
    Points
    30 778
    Par défaut
    Tu peux par exemple ajouter deux contraintes sur la colonne id :
    1. id est unique
    2. id est égal à 1


    [Edit] J'ai répondu trop vite, sans lire correctement la question. J'avais compris que tu ne voulais pas qu'on puisse ajouter une ligne.
    2 solutions : Ajouter un trigger after insert qui supprime la ligne la plus ancienne ou un trigger before insert qui transforme l'insertion en mise à jour.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 219
    Points : 336
    Points
    336
    Par défaut
    Bonjour,

    Est-ce vraiment justifié d'avoir une table qui contient uniquement une information ?
    Sinon tu as plusieurs choix, une requête qui fait un DELETE avec ton INSERT, une requête UPDATE, un déclencheur, ..
    Si débugger est l'art de corriger les bugs, alors programmer est l'art d'en créer.

  4. #4
    Candidat au Club
    Homme Profil pro
    Data Scientist
    Inscrit en
    Novembre 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Novembre 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    C'est pour un projet sur lequel je travaille cet été. Je ne m'y connais pas trop en trigger mais je vais creuser vos recommandations et je reviens vers vous très vite.
    Merci

  5. #5
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 346
    Points : 18 958
    Points
    18 958
    Par défaut
    Salut Wgekou31.

    Il y a plusieurs solutions à votre demande.
    La plus simple est, non pas de faire un "insert", mais plutôt un "update" ou plutôt un "replace"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    REPLACE INTO `lien` (`id`,`nom`,`type`,`date_insertion`) VALUES (1, 'www.Youtube.com', 'Service de visionnage de videos en streaming', '2017-08-10');
    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

  6. #6
    Candidat au Club
    Homme Profil pro
    Data Scientist
    Inscrit en
    Novembre 2016
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Data Scientist

    Informations forums :
    Inscription : Novembre 2016
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Merci pour vos conseils.
    Ca a fonctionné le REPLACE INTO
    Je ne le connaissais pas celui ci


  7. #7
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 346
    Points : 18 958
    Points
    18 958
    Par défaut
    Salut Wgekou31.

    Le "replace" fonctionne selon les cas soit comme un "insert" soit comme un "update".
    Mais vu que la ligne existe déjà "id=1", le "replace" fonctionne alors comme un "update".
    Si votre problème est résolu, vous pouvez cliquer sur le bouton "sujet résolu" !

    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 28/04/2015, 22h05
  2. Réponses: 3
    Dernier message: 20/09/2012, 11h30
  3. Réponses: 2
    Dernier message: 31/03/2011, 12h22
  4. Réponses: 2
    Dernier message: 17/01/2010, 19h09
  5. Réponses: 3
    Dernier message: 15/10/2008, 10h24

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