p
u
b
l
i
c
i
t
é
publicité

Discussion: Liaison entre tables

  1. #1
    Nouveau Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    décembre 2009
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : décembre 2009
    Messages : 98
    Points : 32
    Points
    32

    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 confirmé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    juillet 2011
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Transports

    Informations forums :
    Inscription : juillet 2011
    Messages : 126
    Points : 262
    Points
    262

    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
    Nouveau Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    décembre 2009
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : décembre 2009
    Messages : 98
    Points : 32
    Points
    32

    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 confirmé
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    juillet 2011
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Transports

    Informations forums :
    Inscription : juillet 2011
    Messages : 126
    Points : 262
    Points
    262

    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
    Nouveau Membre du Club
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    décembre 2009
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : décembre 2009
    Messages : 98
    Points : 32
    Points
    32

    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 chevronné
    Profil pro
    Inscrit en
    janvier 2009
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : janvier 2009
    Messages : 479
    Points : 790
    Points
    790

    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