phpbar.de logo

Mailinglisten-Archive

[php] MySQL Tabelle mit PHP Kopieren

[php] MySQL Tabelle mit PHP Kopieren

Bladeck Daniel Daniel at bladeck.de
Mon Jan 5 21:23:31 CET 2004


Hallo Liste,

ich versuche gerade meine Klasse mysql um eine Funktion zu erweitern. Leider
bekomme ich es nicht hin die Feldtypen aus der MySQL Tabelle richtig
auszulesen.

In meiner Tabelle habe ich folgende Spalten:
Spalte 1: `id` int( 11 ) NOT NULL auto_increment PRIMARY KEY
Spalte 2: `befehl` text NOT NULL
Spalte 3: `mailadresse` varchar( 250 ) NOT NULL default ''
Spalte 4: `timestamp` timestamp( 14 ) NOT NULL

Folgender MySQL Befehl sollte am Ende rauskommen:
CREATE TABLE `testdb`.`psTest` (`id` int( 11 ) NOT NULL auto_increment,
`befehl` text NOT NULL,  `mail_senden` int( 3 ) NOT NULL default '0',
`timestamp` timestamp( 14 ) NOT NULL, PRIMARY KEY ( `id` ) ) TYPE = MYISAM;

Wie folgt habe ich versucht meine Spalten auszulesen:
  $fields = mysql_list_fields(trim($von_db), trim($old_tabname),
$this->Link_ID);
  $columns = mysql_num_fields($fields);
  for ($i = 0; $i < $columns; $i++)
  {
   $feldname = mysql_field_name($fields, $i);
   $feldtyp = mysql_field_type($fields, $i);
   $feldlaenge = mysql_field_len($fields, $i);
   $string_feldflags = mysql_fieldflags($fields, $i);
   $feldflags = explode(" ", strtoupper($string_feldflags));
   $flags = trim($feldflags[0]);

   $sql_befehl .= "'".$feldname."' ".$feldtyp."(".$feldlaenge.")
".$string_feldflags." default '', ";
  }

Ausgabe von echo $sql_befehl:
CREATE TABLE 'testdb'.'psTest2' ( 'id' int(11) not_null primary_key
auto_increment default '', 'befehl' blob(65535) not_null blob default '',
'mailadresse' string(250) not_null default '', 'timestamp' timestamp(14)
not_null unsigned zerofill timestamp default '',

Leider habe ich das Problem das mein Textfeld in der Spalte 2 als BLOB Feld
erkannt wird und nicht als Textfeld. Gibt es eine möglichkeit dieses besser
zu machen und die Richtigen Werte zu bekommen?


Mit freundlichen Grüßen und besten Dank für Eure Hilfe
Daniel Bladeck




php::bar PHP Wiki   -   Listenarchive