Ich habe in den letzten paar Wochen daran gearbeitet, eine 68GB-Tabelle in eine normalere Struktur zu zerlegen, und alles läuft reibungslos bis heute.Einfügung schlägt fehl, ausgewählte Daten einzufügen
ich mit dieser Abfrage ein paar ausgewählten Spalten aus dem großen Tisch in die neue Tabelle zu bewegen versucht bin:
insert into [destination] (col1, col2, col3...)
select col1, col2, col3
From [source]
where companyID = [source].companyID
ich die Nachricht erhalten, (60.113.678 Zeile (n) betroffen), aber die Daten waren nicht in das Ziel eingefügt, und die Daten in der Quelltabelle wurden nicht geändert, also was wurde betroffen, und warum wurde keine der Daten in das Ziel eingefügt?
'Aber die Daten wurden nicht in das Ziel eingefügt. <= = Wie haben Sie das verifiziert? – Igor
'where companyID = [Quelle] .companyID 'Sie versuchen, die Tabellen zu verbinden? – Sami
Ihre 'WHERE'-Klausel macht gar nichts. Der Gültigkeitsbereich ist auf das SELECT beschränkt, so dass er die Tabelle "[Ziel]" nicht sehen kann, was bedeutet, dass er nur die Tabelle "[Quelle]" sehen kann. Daher wird die unqualifizierte 'companyID 'auf' [source] 'bezogen. Das gibt 'WHERE [Quelle] .companyID = [Quelle] .companyID', was ich bezweifle, dass du das machen willst? Könnten Sie bitte erklären, was es tun soll? Wie haben Sie außerdem bestätigt, dass keine Zeilen eingefügt wurden? Bitte zeigen Sie das vollständige Skript und die Ergebnisse an. etwas wie 'SELECT COUNT (*) FROM [Ziel]; EINFÜGEN; SELECT COUNT (*) FROM [Ziel]; ' –
MatBailie