Lichtzentrum
Aktives Mitglied
Hallo zusammen,
wir wollten auf die 1.6.32.1 upgraden, aber bei der DB-Aktualisierung kommt folgender Fehler:
Was kann ich tun, um die FOREIGN KEY-Einschränkung zu beheben?
Viele Grüße
wir wollten auf die 1.6.32.1 upgraden, aber bei der DB-Aktualisierung kommt folgender Fehler:
Unbehandelte Ausnahme #959190594F6282F vom Typ System.Exception in
System.Exception: 07:30:34 Fehler in der Version 1.6.0.0 beim Befehl:
==============================================
--
-- dBezahlt und Zahlstatus aus alten Eckdaten uebernehmen
--
UPDATE Verkauf.tAuftragEckdaten
SET tAuftragEckdaten.dBezahlt = AlteEckdaten.dBezahlt
, tAuftragEckdaten.nZahlungstatus = CASE WHEN AlteEckdaten.dBezahlt IS NULL THEN tAuftragEckdaten.nZahlungstatus ELSE 2 END
FROM Verkauf.tAuftragEckdaten
JOIN dbo.tBestellung AS AlteEckdaten ON AlteEckdaten.kBestellung = tAuftragEckdaten.kAuftrag
--
-- nKomplettAusgeliefert anpassen, wegen Neuberechnung aller Reservierungen
-- Auftragsstatus auf OK setzen
--
UPDATE Verkauf.tAuftrag
SET tAuftrag.nKomplettAusgeliefert = CASE WHEN tBestellung.nKomplettAusgeliefert = 1 AND tAuftrag.nKomplettAusgeliefert != 1 THEN 2 ELSE tAuftrag.nKomplettAusgeliefert END
, tAuftrag.nAuftragstatus = 0
FROM Verkauf.tAuftrag
JOIN dbo.tBestellung ON tBestellung.kBestellung = tAuftrag.kAuftrag
WHERE tBestellung.nKomplettAusgeliefert = 1 AND tAuftrag.nKomplettAusgeliefert != 1
OR tAuftrag.nAuftragstatus <> 0
--
-- FK aus 1.5.27.0 auf dbo.tbestellpos droppen
--
IF (OBJECT_ID('FulfillmentNetwork.tOutboundItemRef') IS NOT NULL)
BEGIN
ALTER TABLE [FulfillmentNetwork].[tOutboundItemRef] DROP CONSTRAINT FK_FulfillmentNetwork_tOutboundItemRef_kBestellPos;
EXEC sp_rename 'FulfillmentNetwork.tOutboundItemRef.kBestellPos', 'kAuftragPosition', 'COLUMN';
EXEC sp_rename 'FulfillmentNetwork.tOutboundItemRef.kBestellung', 'kAuftrag', 'COLUMN';
END
--
-- Am Ende vom Update droppen
--
DROP TABLE dbo.tbestelleigenschaft;
DROP TABLE dbo.tbestellnr;
DROP TABLE dbo.tbestellpos;
DROP TABLE dbo.tBestellung;
DROP TABLE dbo.tBestellungAlt;
DROP TABLE dbo.tBestellungAttributeMigration;
DROP TABLE dbo.tBestellungAttributeKeyMigration;
DROP TABLE dbo.tBestellungColor;
DROP TABLE dbo.tBestellungDokument;
DROP TABLE dbo.tBestellungEckDaten;
DROP TABLE dbo.tBestellungGebuehr;
DROP TABLE dbo.tBestellungKampagne;
--
-- Solange die Gutschriften die Daten noch brauchen erstmal nicht droppen
-- DROP TABLE dbo.trechnungsadresse
--
DROP TABLE dbo.tlieferadresse
DROP TABLE dbo.tintervall;
DROP TABLE dbo.tintervallauftrag;
DROP TABLE dbo.tintervallpos;
DROP TABLE dbo.tintervallposeigenschaft;
DROP TABLE dbo.tIntervallZahlungsInfo;
DROP TABLE dbo.trechnung;
==============================================
Message: Das dbo.tbestellpos-Objekt konnte nicht gelöscht werden, da eine FOREIGN KEY-Einschränkung auf das Objekt verweist.
LineNumber: 37
Procedure:
Unbehandelte Ausnahme #959190594F6282F vom Typ System.Exception in : 07:30:34 Fehler in der Version 1.6.0.0 beim Befehl:
==============================================
--
-- dBezahlt und Zahlstatus aus alten Eckdaten uebernehmen
--
UPDATE Verkauf.tAuftragEckdaten
SET tAuftragEckdaten.dBezahlt = AlteEckdaten.dBezahlt
, tAuftragEckdaten.nZahlungstatus = CASE WHEN AlteEckdaten.dBezahlt IS NULL THEN tAuftragEckdaten.nZahlungstatus ELSE 2 END
FROM Verkauf.tAuftragEckdaten
JOIN dbo.tBestellung AS AlteEckdaten ON AlteEckdaten.kBestellung = tAuftragEckdaten.kAuftrag
--
-- nKomplettAusgeliefert anpassen, wegen Neuberechnung aller Reservierungen
-- Auftragsstatus auf OK setzen
--
UPDATE Verkauf.tAuftrag
SET tAuftrag.nKomplettAusgeliefert = CASE WHEN tBestellung.nKomplettAusgeliefert = 1 AND tAuftrag.nKomplettAusgeliefert != 1 THEN 2 ELSE tAuftrag.nKomplettAusgeliefert END
, tAuftrag.nAuftragstatus = 0
FROM Verkauf.tAuftrag
JOIN dbo.tBestellung ON tBestellung.kBestellung = tAuftrag.kAuftrag
WHERE tBestellung.nKomplettAusgeliefert = 1 AND tAuftrag.nKomplettAusgeliefert != 1
OR tAuftrag.nAuftragstatus <> 0
--
-- FK aus 1.5.27.0 auf dbo.tbestellpos droppen
--
IF (OBJECT_ID('FulfillmentNetwork.tOutboundItemRef') IS NOT NULL)
BEGIN
ALTER TABLE [FulfillmentNetwork].[tOutboundItemRef] DROP CONSTRAINT FK_FulfillmentNetwork_tOutboundItemRef_kBestellPos;
EXEC sp_rename 'FulfillmentNetwork.tOutboundItemRef.kBestellPos', 'kAuftragPosition', 'COLUMN';
EXEC sp_rename 'FulfillmentNetwork.tOutboundItemRef.kBestellung', 'kAuftrag', 'COLUMN';
END
--
-- Am Ende vom Update droppen
--
DROP TABLE dbo.tbestelleigenschaft;
DROP TABLE dbo.tbestellnr;
DROP TABLE dbo.tbestellpos;
DROP TABLE dbo.tBestellung;
DROP TABLE dbo.tBestellungAlt;
DROP TABLE dbo.tBestellungAttributeMigration;
DROP TABLE dbo.tBestellungAttributeKeyMigration;
DROP TABLE dbo.tBestellungColor;
DROP TABLE dbo.tBestellungDokument;
DROP TABLE dbo.tBestellungEckDaten;
DROP TABLE dbo.tBestellungGebuehr;
DROP TABLE dbo.tBestellungKampagne;
--
-- Solange die Gutschriften die Daten noch brauchen erstmal nicht droppen
-- DROP TABLE dbo.trechnungsadresse
--
DROP TABLE dbo.tlieferadresse
DROP TABLE dbo.tintervall;
DROP TABLE dbo.tintervallauftrag;
DROP TABLE dbo.tintervallpos;
DROP TABLE dbo.tintervallposeigenschaft;
DROP TABLE dbo.tIntervallZahlungsInfo;
DROP TABLE dbo.trechnung;
==============================================
Message: Das dbo.tBestellung-Objekt konnte nicht gelöscht werden, da eine FOREIGN KEY-Einschränkung auf das Objekt verweist.
LineNumber: 38
Procedure:
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tFirmaAufbewahrungsfrist
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Ticketsystem.tNachrichtEingangsrechnung
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.ebay_coposeigenschaft
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.pf_amazon_apa_usersettings
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tWidgetTemplateSettings
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Rechnung.tRechnungPositionEckdaten
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tStampit
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Artikel.tArtikelVerkaufskanalFeldWert
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tRechnungBackup
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tWidgetSettings
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Sync.tPosLogeintrag
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.ameise_exporttyp
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tWorkflowAktion
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.ebay_de_value
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Ticketsystem.tNachrichtPreisanfrage
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Verkauf.vStandardAuftragCache
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Verkauf.vStandardAuftragCache
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tkontodaten
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.dbo.tVersanddatenExportVorlage
2021-11-30T07:30:34 DEBUG - [TableCache] Invalidate: eazybusiness.Verkauf.tAuftragPositionEigenschaft
2021-11-30T07:30:34 DEBUG - SELECT * FROM [tOptions]
2021-11-30T07:30:34 DEBUG - Dauer: 0ms, (bis zum Reader)
2021-11-30T07:30:34 DEBUG - Dauer: 1ms, 146 Zeilen
2021-11-30T07:30:42 DEBUG - SELECT (CASE WHEN SERVERPROPERTY('MACHINENAME') = HOST_NAME() THEN 'local' ELSE 'remote' END) AS instance
2021-11-30T07:30:42 DEBUG - Dauer: 0ms, Result: local
Zeitstempel: 2021-11-30T07:31:07
Locale: German (Germany)
Locale: German (Germany)
Version: 1.6.32.1
Plattform: Wawi
WawiSeed: 6.1.03472.691801
Prozessname: JTL-Wawi
Physikalischer Speicher: 551292928 / Peak: 571985920
Basispriorität: 8
Prioritätsklasse: Normal
CPU-Zeit (User): 0:00:14,875
CPU-Zeit (System): 0:00:04,78125
Page-Size (Sytem): 2290728 / Peak: 537186304
Page-Size: 504385536 / Peak: 537186304
Offene Handles: 1676
Database:
Build: 2111231012 94718b6f9580b0d20efe00cb595ee12ac5a1c760
Was kann ich tun, um die FOREIGN KEY-Einschränkung zu beheben?
Viele Grüße