Thread Perl , SQL und Datenbank
(13 answers)
Opened by joelsok at 2010-07-15 16:22
Hallo Zuzammen,
ich möchte 50 000 Datensaätze von einer Datenbank zu der einer anderen Datenbank umkopieren. Beide Datenbanken haben die selbe Struktur. Die Daten sind in einer Tabelle namens: Adresse: Probleme: Ich habe folegende sql statement mit perl auf der Datenbank ausgeführt. Mit einer zusäzliche Funktion nämlich getRowCount die mir die Anzahl der Zeile liefert soll. Anstatt mir 50 000 zeile zu liefern, liefert mmir diese Funktion nur 85 Zeile. Somit kann ich nur 85 Datensätze umkopieren Hier die Funktion getRoeCount Code (perl): (dl
)
1 2 3 4 5 6 sub getRowCount { my $self = shift; print "getRowCount.RowCount=",$self->{'RowCount'},"\n" if ($debug); return $self->{'RowCount'}; } hier ein Stück Code Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 $query = "select * from Adresse"; # Query auf Source Datenbank, Fehler abfangen if ($odbc->query($query)) { # Rückgabewert 1 -> SQL-Abfrage fehlgeschlagen $error = $odbc->getErrorText; # Fehlertext ermitteln #$logger->writeError ("error on SQL statement"); #$logger->writeError ("> $error"); $exitCode = 2; #goto END; } # Abfrage ob mehrere Ergebnisse vorhanden sind if ($odbc->getRowCount() > 0) { my $tester = $odbc->getRowCount(); print "source: $tester\n"; #--> leider bekomme ich hier 85 for (my $i=1; $i <= $odbc->getRowCount(); $i++) { $name = $odbc->getColumn($i,"Name"); $old_Incident_recId = $odbc->getColumn($i,"RecId"); wie gesagt in der quelle Datenbank sind 50 000 Datensätze, und diese getRowCount liefert mir nur 85 Zeile anstatt 50000. Ich bin für jede Hilfe dankbar modedit betterworld: Perl-Tags. Last edited: 2010-07-15 16:42:16 +0200 (CEST) |