[TYPO3-dev] Request for cleanup of typo3 database schema

Martin Kutschker Martin.Kutschker at n0spam-blackbox.net
Fri Mar 9 09:26:48 CET 2007


Sven Wilhelm schrieb:
> hi,
> 
> I'd like to request the start for a cleanup of the typo3 database schema.
> 
> why?
> even there is a database abstraction layer available, it's hard till
> impossible to serve typo3 on dbms other than mysql. the most trash that is
> possible with typo3 is also available in the schema.

While I agree on a basic level I don't think it's necessary to insulty 
Mysql. Especially in reference to fields of type tiny int etc. What's wrong 
with that datatype?

> some my call typo3 "portable" to other dbms, but fact is, it's impossible to
> port without heavy filtering/cleanup. maybe some "cracks" will find it
> distributable to do it this way, but for a clean administration it isn't,
> it's just hacking.

Please think again before you not only insult the Mysql but also the TYPO3 
developers. Unlike other on this list your mastery of the English language 
is adequate to formulate qour requests and ideas in a nice and polite manner.

> so what changes would be required?
> * changing the core schema and substitute blobs by text fields

Done for Core but missing for sysext. Note: it has to be checked if some 
fields may contain real binary data before

> * dropping all tiny and medium fields using the next possible size
>   of a standard the required standard field (text, integer)

No, tiny text should be converted to varchar(255). medium text is already 
mapped by DBAL/ADOdb so no worries here.

>   * requires some thoughts what the most distributable fields are
> * maybe using a generator for database specific sql schemas

I don't understand you.

> more future oriented tasks?

???

> * changing the kickstarter to use these more portable datatypes

Ok.

> looking into the current schema, the most "bugfixing" should be possible by
> using TEXT for blobs and INTEGER for (tiny|medium)?int(??).

Interger types are already handled well by DBAL/ADOdb. The only really not 
portable type are unsigned ints.

> attributes like deleted, hidden (at the moment tinyint(3)) are boolean
> fields. as mysql has no native boolean datatype it's an alias for
> tinyint(1). so also there it should be possible to cleanup the schema.

How? You stated that Mysql has no native boolean type. I cannot see then 
how this can be changed?

> as Ingo Renner has started to force an enlargement of the name and title
> attributes for the user and group informations, I would recommend to force
> a standard lengths for varchar fields, 2 or 3 different sizes (better than
> the mix at the moment).

Don't care. Won't hurt but isn't much of an issue to me.

Masi




More information about the TYPO3-dev mailing list