Abstruser Fehler bei UPDATE wegen indexed View

05/05/2008 - 11:42 von Paul Schmidinger | Report spam
Hallo,

Das bisherige Titel-Feld einer bestimmten Tabellenzeile ist "TROCAL 88+".

Der folgende Update funktioniert:
UPDATE [Info] set [Titel]='TROCAL 88+abc' WHERE [S_Info]!42698886

Der folgende funktioniert NICHT:
UPDATE [Info] set [Titel]='TROCAL 8' WHERE [S_Info]!42698886

Er führt zu dieser Fehlermeldung:
Eine Zeile mit doppeltem Schlüssel kann in das 'dbo.V_Info_Produkt'-Objekt
mit dem eindeutigen 'S_Info'-Index nicht eingefügt werden.

- das 'dbo.V_Info_Produkt'-Objekt ist ein schemagebundenes indexed View, das
vom Update betroffen ist und aktualisiert werden muss. Das Feld S_Info ist
sowohl in der Info-Tabelle als auch im View der Primàrschlüssel, Integer.

- Queries wurden eingegeben in MS SQL Server Management Studio Express. Es
geht um SQL-Server 2005.

- es hat ohne das View, das relativ neu ist, bisher immer funktioniert

- ich sehe keinen Sinn in der Fehlermeldung. Niemand verlangt einen
doppelten Schlüssel.

- besonders kurios ist dass eine VERLÄNGERUNG der Zeichenkette KEIN Problem
macht, eine Verkürzung aber schon.

- gleichartige Queries funktionieren bei Info-Eintràgen die das View NICHT
betreffen

- wenn ich die Tabelle über ODBC in MS Access verknüpfe, kann ich das
betroffene Feld nach belieben àndern, ohne das es Fehler erzeugt.

Hat wer einen Rat? Bin ziemlich perplex...

LG,
Paul
 

Lesen sie die antworten

#1 Christoph Ingenhaag
05/05/2008 - 18:11 | Warnen spam
Hi Paul,

poste doch mal die kompletten Definitionen der View, der zugrunde liegenden
Tabellen inklusiver aller Indizes.

Vg
Christoph

Ähnliche fragen