![]() |
Datenbank: DBISAM • Version: 4.30 • Zugriff über: DBISAM
Probleme mit Blobfeldern bei der Datenkonvertierung
Hi, bin dabei eine bestehende Datenbank (DBISAM) nach MySQL zu konvertieren. Am liebsten würde ich das ganze mit Importfunktion "Load DATA INFILE" erledigen. Hierzu brauch muss ich die Daten von meinen alten DBISAM-Tabellen in ein Text- bzw. CSV-Format umwandeln. Hierbei habe ich Probleme mit den Blobfeldern. Habe keine Ahnugn wie ich die am Besten nach csv exportiere.
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
CSV eignet sich nur bedingt dafür. Entweder in XML oder die Blobs getrennt von den restlichen Daten und dann separat importieren
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Oder Du schreibst Dir in Delphi eine kleine "DataPump" mit der Du über die Tabellen iterierst. Setzt voraus dass Du Treiber bzw. Komponenten für beide Datenbanken für Delphi hast.
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Zitat:
Zitat:
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Zitat:
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Zitat:
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Habe es in einem Buch gelesen "MySQL für Adminsitratoren" hier steht dass der Import von großen Daten dringend über .csv empfohlen wird da dies schneller sei.
|
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Am schnellsten geht es ein SQL-Script. Schreib Dir doch ein Tool, was die Daten als SQL exportiert. Das führst Du dann mit MySQL Admin aus. Beispiel:
Code:
CREATE TABLE `mantis_bug_file_table` (
`id` int(10) unsigned NOT NULL auto_increment, `bug_id` int(10) unsigned NOT NULL default '0', `title` varchar(250) collate latin1_german1_ci NOT NULL default '', `description` varchar(250) collate latin1_german1_ci NOT NULL default '', `diskfile` varchar(250) collate latin1_german1_ci NOT NULL default '', `filename` varchar(250) collate latin1_german1_ci NOT NULL default '', `folder` varchar(250) collate latin1_german1_ci NOT NULL default '', `filesize` int(11) NOT NULL default '0', `file_type` varchar(250) collate latin1_german1_ci NOT NULL default '', `date_added` datetime NOT NULL default '1970-01-01 00:00:01', `content` longblob NOT NULL, PRIMARY KEY (`id`), KEY `idx_bug_file_bug_id` (`bug_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci AUTO_INCREMENT=4 ; INSERT INTO `mantis_bug_file_table` (`id`, `bug_id`, `title`, `description`, `diskfile`, `filename`, `folder`, `filesize`, `file_type`, `date_added`, `content`) VALUES (3, 25, '', '', 'upload/ec4ef4e71a6c0f1c6c3b993fd5102757', '20070104104040571.pdf', 'upload/', 203462, 'application/pdf', '2007-01-04 11:29:53', 0x255044462d<hier stehen dann noch 200kb Hey>8f66); |
AW: Probleme mit Blobfeldern bei der Datenkonvertierung
Normalerweise sind bulk insert Operationen am schnellsten. Dabei werden aber eben genau die BLOB-Daten nicht unterstützt.
Versuche, nur die 'normalen' Daten als CSV-Datei abzulegen und über die schnelle Routine zu importieren. Anschließend überträgst Du die BLOB-Daten. Andere Idee: Wenn mySQL CSV-Dateien importieren kann, dann vielleicht auch exportieren. Erstelle eine Testtabelle mit BLOB und exportiere sie. Dann weisst Du ja, wie mySQL das gerne hätte. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz