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 :

ALTER TABLE impossible - objets dépendants


Sujet :

MS SQL Server

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut ALTER TABLE impossible - objets dépendants
    Bonjour,

    Je souhaite modifier le type d'une colonne d'une table (passage de smallint en int) mais le serveur me renvoie une erreur de dépendance.

    Voici la requête que je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    alter table NOM_DE_LA_TABLE ALTER COLUMN NOM_COLONNE  INT;
    Et voici la réponse du serveur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Serveur : Msg 5074, Niveau 16, État 1, Ligne 1
    Le objet 'DF__NOM_DE_LA__NOM_C__1CA7377D' dépend du colonne 'NOM_COLONNE'.
    Serveur : Msg 4922, Niveau 16, État 1, Ligne 1
    ALTER TABLE ALTER COLUMN NOM_COLONNE ont échoué car un ou plusieurs objets ont accès à cette colonne.
    Je ne vois pas du tout d'où sort l'objet 'DF__NOM_DE_LA__NOM_C__1CA7377D'.
    La table en question ne comporte ni contrainte, ni clé étrangère, juste une clé primaire.

    Si quelqu'un a une idée ?!?

    Merci d'avance !!
    Laure.

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Bonjour,

    Il s'agit d'une contrainte default, qui gère la valeur par défaut de votre colonne. Vous pouvez la supprimer et la recréer ensuite, en générant le code de drop et de create via Query Analyzer (dans l'object explorer)
    Rudi Bruchez
    Rudi Bruchez EIRL, solutions MS SQL Server et NoSQL
    LinkedIn - [Outil libre de diagnostic SQL Server : Sql Trismegiste]
    LIVRES : Optimiser SQL Server -
    Microsoft SQL Server 2012 Security Cookbook
    - les bases de données NoSQL

    e-learning : LinkedIn Learning - Pluralsight

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 15
    Points : 14
    Points
    14
    Par défaut
    Merci, c'était bien une contrainte default.
    Voici les étapes pour modifier le type de la colonne :

    Suppression de la contrainte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     ALTER TABLE NOM_DE_LA_TABLE  
        DROP CONSTRAINT DF__NOM_DE_LA__NOM_C__1CA7377D;
    Modification du type de la colonne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ALTER TABLE NOM_DE_LA_TABLE ALTER COLUMN NOM_COLONNE INT;
    Ré-ajout de la contrainte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     ALTER TABLE NOM_DE_LA_TABLE 
        ADD CONSTRAINT DF__NOM_DE_LA__NOM_C__1CA7377D
        DEFAULT ('0') FOR NOM_COLONNE;

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

Discussions similaires

  1. Serveur lié impossible de faire ALTER TABLE ou TRUNCATE
    Par cmako dans le forum Administration
    Réponses: 1
    Dernier message: 11/11/2009, 12h55
  2. [Relationnel Objet] Tables d'Objet et les OID
    Par Laurent Dardenne dans le forum Administration
    Réponses: 5
    Dernier message: 24/03/2004, 18h11
  3. Mise à jour de table impossible après requête avec jointure
    Par sto dans le forum Bases de données
    Réponses: 5
    Dernier message: 17/03/2004, 13h24
  4. Probleme 'ALTER TABLE' et 'FOREIGN KEY'
    Par maahta dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 30/09/2003, 14h25
  5. Alter table qui ne passe...
    Par Gential dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 04/06/2003, 17h48

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