Mit ZMS automatische Datenbank-Masken erstellen
[Vortrag Python User Group Berlin 18.06.2009] Das ZMSSQLDB-Objekt ist ein OR-Mapper, der auf die Zope-SQL-Interfaces aufsetzt und ein generisches User-Interface für die ER-Modellierung sowie die Masken für die Datenbearbeitung automatisch erzeugt. Damit lassen sich externe SQL-Datenbanken sehr rasch, ohne Programmierung in das ZMS-Redaktionssystem einbinden.
Die Charts des Vortrags stellen kurz ZMS vor und ordnen das ZMSSQLDB-Objekt ein. Anschliessend werden die wichtigsten Merkmale dargestellt. Anhand des Beispiels "CD-Datenbank" wird die Methodik der generischen Entity-Relationship-Modellierung vertieft. Alle eingesetzten Resources finden sich hier zum Download:
testdatabase.zexp (1.1 MB)
Hinweis: Versionsempfehlung MySQLDA 2.0.8
http://sourceforge.net/project/showfiles.php?group_id=22307&package_id=15779
TIPP: In der my.cnf sind einige Parameter erforderlich, um hartnäckige charset-Vereinbarungen ausser Kraft zu setzen und utf8 effektiv durchzureichen:
# The MySQL server
[mysqld]
init_connect="SET NAMES utf8"
....
collation_server=utf8_unicode_ci
character_set_server=utf8
skip-character-set-client-handshake
....
Referenzen:
http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html
http://mail.dzug.org/pipermail/zope/2007-April/003482.html
Weiteres Vorgehen:
a. mysql-Zope-Connection per MySQL-Admin killen
b. dann ZOPE-SQLConnection erneut konnekten, damit init_connect auch wirken kann.
c. man sollte prüfen, ob der default-charset von DB bzw Tabellen tatsächlich utf8 ist, ggf. ändern:
ALTER DATABASE tablename DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci
Erstellt von: Dr. Frank Hoffmann , erstellt am: 23.06.2009 , zuletzt geändert: 10.05.2010

