Fehlermeldungen beim Ausführen von Änderungen unter MS-SQL

Aus GEVITAS
Version vom 23. Oktober 2019, 12:09 Uhr von Gevitas (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

1 Allgemeines

Hier wird beschrieben, welche bekannten Fehlermeldungen beim Ausführen eines Datenbank-Updates vorkommen können und wie man damit umgehen kann.

1.1 Das Index-Objekt xxx ist vom Spalte-Objekt yyy abhängig

Wenn z.B. die Länge eines Feldes vergrößert werden soll, wird dazu beispielsweise diese Anweisung verwendet:

alter table MART alter column GRUPPE varchar(50)

Daraufhin wird folgende Fehlermeldung vom SQL-Server zurückgegeben:


SQL Interpreter-Fehlertext: 

Das Index-Objekt 'MART_GRUPPEN' ist vom Spalte-Objekt 'GRUPPE' abhängig

Die Änderung kann nicht ausgeführt werden, weil es auf das Feld einen Index gibt. Leider kann der SQL-Server solche Änderungen nicht ohne weiteres durchführen.


1.1.1 Lösung 1 - Script

Man kann einen Script erstellen, der den betreffenden Index löscht, die Feldänderung ausführt und dann den Index neu erstellt. Beispiel:


drop index MART.MART_GRUPPEN

alter table MART alter column GRUPPE varchar(50)

create index MART_GRUPPEN on MART (GRUPPE)

1.1.2 Lösung 2 - SQL-Management-Studio

Man kann die Änderung auch manuell im SQL-Management-Studio ausführen.

Dazu im Explorer links auf die Tabelle und das navigieren. Dann auf das Feld mit der rechten Maustaste klicken und auf Ändern klicken.

Nun unten in der Tabelle mit den Eigenschaften des Felder die gewünschte Länge eingeben und oben auf den Button Speichern klicken.


Wenn dabei eine Fehlermeldung ("Das Speichern von Änderungen ist nicht zulässig...") auftritt...

SQLServer Fehler Aendern Unzulaessig.png

...so muss man in den Optionen des Management-Studios diese Option ausschalten:

SQLServer Fehler Aendern Unzulaessig Option.png