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

SQLite Discussion :

Liaison entre tables


Sujet :

SQLite

  1. #1
    Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Décembre 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2009
    Messages : 102
    Points : 66
    Points
    66
    Par défaut Liaison entre tables
    Bonjour,

    J'ai jamais vraiment utilisé de SGBD et je compte pas devenir spécialiste. Mais j'ai un petit truc à faire et une BDD me semble adaptée.

    Bref j'ai "choisi" SQLite parce qu’il à l'air simple et que j'ai trouvé un super tuto (court, et efficace http://www.dreamincode.net/forums/to...ite-with-c%23/) pour interfacer une BDD SQLite en C#.

    J'ai installé ce qui me semble nécessaire dont un GUI (SQLite Administrator). Avec ce GUI j'ai créé une base et 3 tables. J'ai saisi 2 ou 3 lignes dans chaque tables pour manipuler.

    Maintenant j'aimerai créer des liens (qu'un champs de la table 2 vienne piocher dans la table 1). Et la je suis sec !!!

    Avant d’écrire ici j'ai regardé dans les tutos du site mais j'ai pas trouvé, auriez-vous un bon tuto ou la solution à mon problème ?

    Un grand merci par avance

  2. #2
    Membre éprouvé
    Homme Profil pro
    Chef de projets retraité
    Inscrit en
    Juillet 2011
    Messages
    420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Chef de projets retraité
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2011
    Messages : 420
    Points : 1 102
    Points
    1 102
    Par défaut
    Bonjour,

    Je suppose que ce que tu cherches à faire se trouve là http://sqlpro.developpez.com/cours/sqlaz/jointures/

    mais quelques remarques de vocabulaire :

    On parle plutôt de colonnes dans une base relationnelle
    Une colonne ne va pas piocher elle peut référencer une autre table de la base sur une de ses colonnes.

    Cordialement

  3. #3
    Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Décembre 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2009
    Messages : 102
    Points : 66
    Points
    66
    Par défaut
    Bonjour,

    Merci pour le lien. J'ai lu quelques docs sur les jointures suite à ta réponse.
    Mais j'ai toujours une question. OK avec SELECT ... JOIN ...... WHERE .... je vais établir un lien. Mais dans ma compréhension ce lien n'existe qu'au moment ou j’exécute la requête. Si j'ai bien compris ce lien est une opération du frontend (appli C# dans mon cas) et non une propriété intrinsèque de la base (.s3db de SQLite dans mon cas). Donc si 2 frontends sont développés et partagent les mêmes tables il se peut qu'une application établisse explicitement le lien et l'autre non.

    Pourrais-tu me le confirmer si j'ai bien compris ? Merci.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Chef de projets retraité
    Inscrit en
    Juillet 2011
    Messages
    420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Chef de projets retraité
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2011
    Messages : 420
    Points : 1 102
    Points
    1 102
    Par défaut
    Bonjour,

    Oui, bien sûr, c'est l'application qui doit savoir si elle veut récupérer le code (pas de jointure) ou un attribut quelconque lié à la clé (jointure)

    Exemple pour récupérer le nom d'un pays, je fais une jointure sur une table des pays qui contiendra le code, le nom, la monnaie ...)

    Bien entendu, le code pays sera le lien entre les deux tables.

    Par contre, si tu veux garantir que dans ta première table, le code pays existe à coup sûr dans la table des pays, alors tu dois mettre en œuvre les triggers.
    http://www.sqlite.org/lang_createtrigger.html

    Cordialement

  5. #5
    Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Décembre 2009
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Gard (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2009
    Messages : 102
    Points : 66
    Points
    66
    Par défaut
    Merci,

    J'ai juste survolé ton lien mais ça me plait bien ce trigger. Dans une autre doc j'ai entendu parler de "procedure stockée" c'est la meme chose ?

    Je vais me pencher plus serieusement sur les triggers.

    Cordialement

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    566
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 566
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    J'ai juste survolé ton lien mais ça me plait bien ce trigger. Dans une autre doc j'ai entendu parler de "procédure stockée" c'est la meme chose ?
    Pas exactement.

    Pour les procédures stockées, tu oublies car Sqlite ne sait pas les utiliser. Cette possibilité n'est pas implanté.

    Les triggers sont des requêtes spécifiques qui interviennent avant ou après une opération INSERT, UPDATE et DELETE.

    Ne pas oublier la documentation Sqlite.

    A+

Discussions similaires

  1. [VB.net] liaison entre table et textbox's
    Par collaud_vb dans le forum Windows Forms
    Réponses: 10
    Dernier message: 25/09/2006, 13h27
  2. [Access 2003]Problème de liaison entre table
    Par steeves5 dans le forum Access
    Réponses: 3
    Dernier message: 12/06/2006, 09h40
  3. [DEB] Probleme de liaison entre tables
    Par ip203 dans le forum Access
    Réponses: 4
    Dernier message: 07/06/2006, 07h16
  4. Liaison entre tables
    Par Thierry69800 dans le forum Access
    Réponses: 1
    Dernier message: 20/11/2005, 23h19
  5. Problèmes de liaisons entre tables ...
    Par Mangun dans le forum Access
    Réponses: 2
    Dernier message: 28/09/2005, 11h35

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