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

MS SQL Server Discussion :

tests de script et clefs étrangères en INSERT


Sujet :

MS SQL Server

  1. #1
    Invité
    Invité(e)
    Par défaut tests de script et clefs étrangères en INSERT
    bonjour à tous,

    Après recherche sur ce forum, je ne capte toujours pas comment m'en sortir.

    La situation :
    - j'ai une table qui comporte 3 clefs étrangères
    - je souhaite tester un script d'insertion de données dans cette table

    Mon problème :
    - si je ne spécifie pas dans ma requête les clefs étrangères, le serveur me rappelle que ces données ne peuvent être nulles
    - si je leur spécifie une valeur, elle ne convient pas
    - les tables contenant ces clefs sont encore vides (et même, je ne sais pas comment y faire référence)

    Note :
    - je sais ce qu'est une jointure mais en MySQL (donc limitée)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO TABLE (TABLE_Code, TABLE_DateDebutLivraison, TABLE_DateFinLivraison, TABLE_Prix, TABLE2_PKEY, TABLE3_PKEY, TABLE4_PKEY) VALUES (1, 2006-05-12, 2006-06-12, 0, 0, 0,0)
    Sybase message: INSERT statement conflicted with COLUMN FOREIGN KEY constraint 'FK_TABLE_TYPE_xxx'. The conflict occurred in database 'MABASE', table 'xxx', column 'xxx_PKEY'. (severity 16) in /usr/local/apache/htdocs/xxx/mssql_connect.inc.php on line 68

  2. #2
    Invité
    Invité(e)
    Par défaut
    Je me réponds...
    j'ai pas trouvé, mais je suis sur la piste

    SQL Server propose trois possibilités pour contrôler l'application des contraintes de clé étrangère. On peut ajouter des contraintes après avoir ajouté des données, désactiver temporairement le contrôle des références de clé étrangère, ou utiliser bcp (bulk copy program) ou encore la commande BULK INSERT pour charger des données et éviter la vérification des contraintes de clé étrangère.
    source : http://www.itpro.fr/index1.asp?Idart...16&Num=5&rub=3

  3. #3
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    70
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 70
    Points : 84
    Points
    84
    Par défaut
    Bonjour,
    Le problème est simple :
    Pour les valeurs nulles non accéptées, c'est le fait que les champs sont déclarés non null ( Null non autorisé ).
    Pour les valeurs indiquées qu'il n'accepte pas, c'est juste que ces valuers n'existent pas sur les tables référencées.

    Vérifie les valeurs sur tes table Table2 et Tavle3

    Bonne chance

  4. #4
    Invité
    Invité(e)
    Par défaut
    Merci
    j'arrive de MySQL où ces systèmes n'existent pas (enfin, je vais pas rentrer dans le débat) donc c'est pas évident.

    Soluce : remplir les tables, mm pour les tests et vérifier que 0 est bien un index dans la table.

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

Discussions similaires

  1. Clef étrangère
    Par spilarix dans le forum Requêtes
    Réponses: 5
    Dernier message: 21/02/2006, 23h03
  2. clef étrangère référençant une autre base
    Par menoce dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 06/07/2005, 19h31
  3. 5 clefs étrangères?
    Par P@t dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 15/05/2005, 16h52
  4. [wamp5] [Relations] Clefs étrangéres
    Par nebule dans le forum Outils
    Réponses: 6
    Dernier message: 05/10/2004, 11h17
  5. [SQL SERVER 2000] Problème clef étrangére
    Par Tankian dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 11/05/2004, 10h44

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