Mailinglisten-Archive |
Hallo miteinander, gerade habe ich mich anlässlich eines Problems subskribiert. Ich bin Sprachwissenschaftlerin und arbeite mit Sprachmassendaten. Hierbei ist folgendes Problem aufgetreten: CREATE TABLE ... funktioniert nicht für mehr als 2500 Spalten. Fehlermeldung beim Aufruf aus Perl: "DBD::mysql:: db do failed: Too many columns at program.pl ..." An Perl liegt es nicht, sondern eindeutig an mysql. Weiß jemand, was man da machen kann? Wahrscheinlich muss man ja nur irgendeinen Stack hochsetzen oder so. Ich habe nirgendwo eine Lösung gefunden. Das (vereinfachte) Perl-Programm hänge ich an. Viele Grüße, Petra Steiner use DBI; use DBD::mysql; my($i, $table_name, $DB, $dbh, _(at)_fields, ); $DB = "petra"; $dbh = DBI->connect("dbi:mysql:$DB", "root", ""); if (!$dbh) {print "$DBI::errstr ";} _(at)_fields = (); for ($i = 1; $i <= 4000; $i++) { push _(at)_fields, "n$i"; }# spaltennamen ; colnames print "_(at)_fields "; $table_name = "tabelle"; $dbh -> do("DROP TABLE if EXISTS $table_name"); $dbh -> do("CREATE TABLE $table_name (" . join (", ", map {"$_ TINYTEXT"} _(at)_fields) . " )"); $dbh -> disconnect; exit(0); - --------------------------------------------------- Petra Steiner Arbeitsbereich Linguistik Universitaet Muenster Huefferstrasse 27 48149 Muenster Tel: 0251 / 83 39442 petra_(at)_marley.uni-muenster.de --- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive