none
c# Les table lier en SqlCe 3.5 RRS feed

  • Question

  • Bonjour a tous
    jutilise ceci pour creer mes table mais j'aimerais savoir si les table sont lier de cette facon et comment fair pour les lier

    static public void Create()
            {
                SqlCeConnection cn = new SqlCeConnection(ConnectString());
                if (cn.State == ConnectionState.Closed)
                { cn.Open(); }
                SqlCeCommand cmd;
                /* ********************************************************** */
                sql = "create table Snippets("
                    + "SID INT IDENTITY (1,1) PRIMARY KEY not null, "
                    + "SName nvarchar(256), " 
                    + "SDesc nvarchar(256), "
                    + "SCode nText)";
                cmd = new SqlCeCommand(sql, cn);
                cmd.ExecuteNonQuery(); 
                /* ********************************************************** */
                sql = "create table SDir("
                + "SDID INT IDENTITY (1,1) PRIMARY KEY not null, "
                + "SID int not null, " 
                + "SDName nvarchar(256))";
                cmd = new SqlCeCommand(sql, cn);
                cmd.ExecuteNonQuery(); 
                cn.Close();
            }

    Merci

    Daniel


    mercredi 12 septembre 2012 13:25

Réponses

  • Bonjour,

    Je crois comprendre que l'on voudrait créer une relation d'intégrité entre les deux tables. Voir par exemple http://msdn.microsoft.com/fr-fr/library/ms172933(v=sql.90).aspx :

    CREATE TABLE MembershipData (MemberId INTEGER IDENTITY (1,1) CONSTRAINT pkMemberId PRIMARY KEY, MemberName NVarChar (50));
    CREATE TABLE FlightData (MemberID INTEGER CONSTRAINT MyFK FOREIGN KEY REFERENCES MembershipData(MemberID), Destination NVarChar (50), FlightStatus NVarChar(50), ArrivalDate DATETIME, FlownMiles INTEGER);

    Sauf erreur de ma part cela devrait marcher avec "CONSTRAINT MyFK" que j'ai ajouté dans l'instruction SQL donnée en exemple sur la page. Cela permet de donner un nom à la contrainte ce qui permet de la manipuler plus facilement ultérieurement si besoin était (sinon elle a un nom calculé plus ou moins alambiqué).

    Sinon préciser ce que vous voulez dire par "lier" les tables.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    • Marqué comme réponse DanielMorais jeudi 13 septembre 2012 22:29
    jeudi 13 septembre 2012 16:02
    Modérateur

Toutes les réponses

  • Bonjour,

    Que voulez vous dire par "savoir si les table sont lier de cette facon et comment fair pour les lier" ?

    Cordialement


    Gilles TOURREAU - MVP C#
    Architecte logiciel/Consultant/Formateur Freelance
    Blog : http://gilles.tourreau.fr
    - MCPD : Enterprise Developper / Windows Developper 3.5 / ASP .NET 3.5/4.0
    - MCITP : SQL Server 2008 Developper
    - MCTS : ADO .NET 3.5 / SQL Server 2008 Developper / Windows Forms 3.5 / ASP .NET 3.5/4.0

    mercredi 12 septembre 2012 22:08
    Modérateur
  • Bonjour,

    Je crois comprendre que l'on voudrait créer une relation d'intégrité entre les deux tables. Voir par exemple http://msdn.microsoft.com/fr-fr/library/ms172933(v=sql.90).aspx :

    CREATE TABLE MembershipData (MemberId INTEGER IDENTITY (1,1) CONSTRAINT pkMemberId PRIMARY KEY, MemberName NVarChar (50));
    CREATE TABLE FlightData (MemberID INTEGER CONSTRAINT MyFK FOREIGN KEY REFERENCES MembershipData(MemberID), Destination NVarChar (50), FlightStatus NVarChar(50), ArrivalDate DATETIME, FlownMiles INTEGER);

    Sauf erreur de ma part cela devrait marcher avec "CONSTRAINT MyFK" que j'ai ajouté dans l'instruction SQL donnée en exemple sur la page. Cela permet de donner un nom à la contrainte ce qui permet de la manipuler plus facilement ultérieurement si besoin était (sinon elle a un nom calculé plus ou moins alambiqué).

    Sinon préciser ce que vous voulez dire par "lier" les tables.


    Please always mark whatever response solved your issue so that the thread is properly marked as "Answered".

    • Marqué comme réponse DanielMorais jeudi 13 septembre 2012 22:29
    jeudi 13 septembre 2012 16:02
    Modérateur
  • Merci a vous deux

    pour ce retour

    Patrice je vais essayer ton snippets de code  et te laisserai un message ici plus tard car la grippe ne semble pas vouloir me lacher et je suis comme au neutre pour les l'instant

    A plus


    Daniel

    jeudi 13 septembre 2012 18:37