PERL mit Win32: ODBC / DBI liest viele Tische gut, dann gibt man nichts zurück

##Read table staStations if ($mssqldb->Sql("SELECT stationID, security, dockingCostPerVolume, maxShipVolumeDockable, officeRentalCost, operationID, stationTypeID, corporationID, solarSystemID, constellationID, regionID, stationName, reprocessingEfficiency, reprocessingStationsTake, reprocessingHangarFlag FROM staStations")) { print "SQL Error: " . $mssqldb->Error() . "\n"; $mssqldb->disconnect; exit; } # Read table staStations $count = 0 ; while ($mssqldb->FetchRow) { my ($stationID, $security, $dockingCostPerVolume, $maxShipVolumeDockable, $officeRentalCost, $operationID, $stationTypeID, $corporationID, $solarSystemID, $constellationID, $regionID, $stationName, $reprocessingEfficiency, $reprocessingStationsTake, $reprocessingHangarFlag) = $mssqldb->Data(); ### Get data values from the row $stationName =~ s/\'/\'/g; $mysqlconnect->do("INSERT INTO staStations(stationID, security, dockingCostPerVolume, maxShipVolumeDockable, officeRentalCost, operationID, stationTypeID, corporationID, solarSystemID, constellationID, regionID, stationName, reprocessingEfficiency, reprocessingStationsTake, reprocessingHangarFlag) VALUES ('$stationID', '$security', '$dockingCostPerVolume', '$maxShipVolumeDockable', '$officeRentalCost', '$operationID', '$stationTypeID', '$corporationID', '$solarSystemID', '$constellationID', '$regionID', '$stationName', '$reprocessingEfficiency', '$reprocessingStationsTake', '$reprocessingHangarFlag') ;"); $count = $count + 1 ; print $count . " Rows into staStations \n" ; } 

Der erste Teil funktioniert gut

  if ($mssqldb->Sql("SELECT iconID, iconFile, description FROM eveIcons")) { print "SQL Error: " . $mssqldb->Error() . "\n"; $mssqldb->disconnect; exit; } # write table eveIcons foreach ($mssqldb->FetchRow()) { my ($iconID, $iconFile, $description) = $mssqldb->Data(); ### Get data values from the row $description =~ s/\'/\'/g; #$iconFile =~ s/\_/\_/g; print "iconID: " . $iconID . "\n" ; print "file: " . $iconFile . "\n" ; print "desc: " . $description . "\n \n" ; $mysqlconnect->do("INSERT INTO eveIcons(`iconID`, `iconFile`, `description`) VALUES ('$iconID', '$iconFile', '$description') ;"); $count = $count + 1 ; print $count . " Rows into eveIcons \n" ; } 

kann kein Problem finden, aber nichts wird zurückgegeben, das liest keine data ..

es platziert ein "0" in der ersten Spalte meiner MySql Tabelle

gibt es 1689 datasätze in der MSSQL-Tabelle, was mache ich worng?

Ich hatte Schwierigkeiten mit dem Lesen langer dataspalten von mssql und LongTruncOk und LongReadLen triggerse sie.

Es scheint, Sie haben Schwierigkeiten, sie zu schreiben. Versuchen Sie und schauen Sie sich diese Artice an: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=%2Fcom.ibm.db2.udb.apdv.sample.doc%2Fdoc% 2Fperl% 2Fs-dtlob-pl.htm

Es gibt Beispiele dafür, wie man einen Blob schreibt. Versuchen Sie, das zu Ihrem Beschreibungsfeld anzuwenden.

Ich verstehe nicht ganz warum, aber etwas über das Beschreibungsfeld auf dem MSSQL-server versuchte, viel memory zuzuordnen, sobald ich aufhörte zu versuchen, diese Spalte zu kopieren, funktionierte es gut,

mehr Info-datatyp auf der MSSQL-Tabelle ist auf VARCHAR (MAX) gesetzt, obwohl keines der Felder in dieser Spalte mehr als 127 character hatte