Tom: MySQL Aufsplitten von Dateiinformationen

Beitrag lesen

Hello,

ich bastele immer noch an den Datenbank-Tools.

Da habe ich die Funktion get_info(), die die Tabelleninformationen mittels SQL: show columns from $table  besorgt.

Daraus wird ein Array gebaut

returns:

info[fieldname1]["Type"] 1)

#                 ["Len"]  *)
#                 ["Rem"]  *)
#                 ["Null"]
#                 ["Key"]
#                 ["Default"]
#                 ["Extra"]
#                 ["Style"] *)  bisher nur  'align="right"'  oder
#                               'style="text-align:right;"'

info[fieldname2][...]

...

1) wird von mir zerlegt und *) werden hinzugefügt

Typen sind zur Zeit:

#   tinyint
#   smallint
#   mediumint
#   int
#   bigint
#   float
#   double
#   decimal
#   date
#   datetime
#   timestamp
#   time
#   year
#   char
#   varchar
#   tinyblob
#   tinytext
#   text
#   blob
#   mediumblob
#   mediumtext
#   longblob
#   longtext
#   enum
#   set

Formatbeispiele:

#   bigint(20) unsigned
#   timestamp(14)
#   varchar(30)
#   set('EINS','ZWEI','DREI','VIER','FÜNF')
#   float(11,10)
#   double(11,5)
#   decimal(10,2)
#   year(2)
#   char(2)
#   enum('eins','zwei','sieben','12')

Die Formate muss ich nun in die drei Felder Type, Len(gth) und Rem(ark) aufsplitten, damit die Informationen für die Weiterverarbeitung zur Verfügung stehen.

Meine Fragen:
1. habe ich Formate übersehen?
2. Wie würdet Ihr die Aufteilung machen? Sollte ich für signed/unsingned
   lieber ein extra Feld nehmen und bei decimal Len und Dec angeben? Wo
   sollte die Liste für enum und set erscheinen?
3. Wie mache ich die Aufsplittung am geschicktesten? Preg_match_all oder
   gibts eine einfachere Lösung?
4. Wie würdet Ihr Datum formatieren -> left, right?
   Ich habe bisher beobachtet, dass Ziffern trotz Proportionalschrift
   immer die gleiche Breite (oder ist es dieselbe ?) haben. Stimmt das?

Liebe Grüße aus http://www.braunschweig.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen