Häufig auftretende Fehler bei SQL-Updates

Aus GEVITAS
Wechseln zu: Navigation, Suche

1 Allgemeines

1.1 Datenbank-Objekt schon vorhanden

Wenn ein Datenbank-Objekt angelegt werden soll, das es schon gibt, wird diese oder ein ähnliche (je nach Datenbank-Typ) Meldung ausgegeben:

Fehler in Anweisung Nr: 11
Inhalt: 
alter table RECHPO add KENNZ1 int NULL
=================================================
SQL Interpreter-Fehlertext:
Spaltennamen müssen in jeder Tabelle eindeutig sein. Der Spaltenname 'KENNZ1' wurde in der RECHPO-Tabelle mehrmals angegeben

oder

SQL Interpreter-Fehlertext:
ORA-01430: Angefügte Spalte bereits in Tabelle vorhanden

oder

=================================================
SQL Interpreter-Fehlertext:
ORA-00955: Es gibt bereits ein Objekt mit diesem Namen
=================================================
=================================================
Allgemeiner SQL-Fehler
Index bereits vorhanden
SQL Server]Fehler bei dem Vorgang, weil ein Index oder eine Statistik mit dem Namen
'INDEX-NAME' für 'TABELLEN-NAME' (Tabelle) bereits vorhanden ist.
=================================================


Diese Meldungen sind in der Regel unkritisch und können ignoriert werden. Sie weißen darauf hin, dass das Script schon einmal ausgeführt wurde.

Trotzdem sollte man prüfen, ob das Update in der richtigen Datenbank (Oracle: Schema) durchgeführt wurde.


1.2 Objekt nicht vorhanden

=================================================
SQL Interpreter-Fehlertext:
ORA-00942: Tabelle oder View nicht vorhanden
=================================================

Ganz selten einmal wird in einem Update-Script etwas gelöscht. Wenn ein vorheriges Datenbank-Update nicht ausgeführt wurde, kann es zu dieser Meldung kommen.

Diese Meldung weißt darauf hin, dass das ein früheres Update-Script nicht (korrekt) ausgeführt wurde. Das sollte durch einen Fachmann (z.B. der GEVITAS-Support) geprüft werden!


1.3 Ungültiger Bezeichner

=================================================
SQL Interpreter-Fehlertext:
ORA-00904: "ERFUSER": ungültiger Bezeichner
=================================================

Das ist ein ernstzunehmender Fehler.

Diese Meldung weißt darauf hin, dass das ein früheres Update-Script nicht (korrekt) ausgeführt wurde. Das sollte durch einen Fachmann (z.B. der GEVITAS-Support) geprüft werden!

1.4 Index schon vorhanden

=================================================
SQL Interpreter-Fehlertext:
ORA-01408: Diese Spaltenliste hat bereits einen Index
=================================================

An sich ist die Meldung unkritisch. Sie weißt darauf hin, dass das Script schon einmal ausgeführt wurde. Die Frage ist, warum!

Deshalb sollte man prüfen, ob das Update in der richtigen Datenbank (Oracle: Schema) durchgeführt wurde.


1.5 Index-Fehler

Per Update-Script werden z.B. neue Zugriffsrechte in die USer-Tabellen eingefügt.

=================================================
Indexfehler
[SQL Server]Verletzung der UNIQUE KEY-Einschränkung 'TABELLEN-NAME'. Ein doppelter Schlüssel
kann in das Objekt nicht eingefügt werden. Der doppelte Schlüsselwert ist (xx, 1).
=================================================

An sich ist die Meldung unkritisch. Sie weißt darauf hin, dass das Script schon einmal ausgeführt wurde. Die Frage ist, warum!

Deshalb sollte man prüfen, ob das Update in der richtigen Datenbank (Oracle: Schema) durchgeführt wurde.


1.6 Default-Wert konnte nicht vergeben werden

=================================================
Allgemeiner SQL-Fehler
[SQL Server]An die Spalte ist bereits ein DEFAULT-Wert gebunden.
[SQL Server]Die Einschränkung konnte nicht erstellt werden. Siehe vorherige Fehler.
=================================================

Die Meldung weißt darauf hin, dass das Script schon einmal ausgeführt wurde. Die Frage ist, warum!

Deshalb sollte man prüfen, ob das Update in der richtigen Datenbank (Oracle: Schema) durchgeführt wurde.


1.7 Fehlende Berechtigung

=================================================
Allgemeiner SQL-Fehler
[SQL Server]Suchen des Objekt-Objekts 'TABELLEN-NAME' ist nicht möglich, weil das Objekt nicht
vorhanden ist oder Sie nicht die erforderliche Berechtigung haben.
=================================================

Diese Meldung kann auf ein ernsthaftes Problem hinweisen! Vor allem, wenn es mehrfach bei der Script-Ausführung auftaucht.

Es besteht der Verdacht, dass der User, der das Script ausführt, zu wenige Rechte auf dem SQL-Server oder der Datenbank hat!

Das Datenbank-Update kann nicht korrekt ausgeführt werden, wenn man die benötigten Rechte dazu nicht hat!


1.8 Volltextsuche ist nicht installiert

=================================================
Fehler in Anweisung Nr: 862
Anweisung: 
CREATE FULLTEXT INDEX ON marteinztext(RTF_TEXT)
KEY INDEX MARTEINZTEXT_ID
-------------------------------------------------
Fehlertext:
Allgemeiner SQL-Fehler
[SQL Server]Die Volltextsuche ist nicht installiert, oder eine Volltextkomponente kann nicht
geladen werden.
=================================================

Manche optionalen Programmfunktionen benutzen einer serverseitige Volltextsuche. Diese muss installiert und in den SQL-Server-Optionen eingeschaltet worden sein!




2 Links