Hi Uwe Raabe
Das Script 'funktioniert' in Workbench überhaupt nicht. Workbench kann erst genutzt werden, wenn eine aktive Verbindung zum
MySQL-Server besteht(*). Für den
MySQL-Server generiert
MySQL-Workbench (**) zum Beispiel folgendes Script:
Delphi-Quellcode:
-- -----------------------------------------------------
-- Table `ContentMasterData`.`kategorien_tabelle`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `ContentMasterData`.`kategorien_tabelle` ;
CREATE TABLE IF NOT EXISTS `ContentMasterData`.`kategorien_tabelle` (
`Kath_ID` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`Kategorie` VARCHAR(120) CHARACTER SET 'latin1' NOT NULL,
PRIMARY KEY (`Kath_ID`))
ENGINE = InnoDB
AUTO_INCREMENT = 3
DEFAULT CHARACTER SET = latin1;
-- -----------------------------------------------------
-- Table `ContentMasterData`.`bildtabelle`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `ContentMasterData`.`bildtabelle` ;
CREATE TABLE IF NOT EXISTS `ContentMasterData`.`bildtabelle` (
`idBild` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`Thumbnail` BLOB NULL,
`Bitmap` BLOB NULL,
`Jpeg` BLOB NULL,
`FolderId` VARCHAR(32) NULL,
PRIMARY KEY (`idBild`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;
Was auffällt: Hier sind die Feldnamen in accents eingeschlossen - den selben accents, die von
MySQL-Autoren benutzt werden, um an der Comandozeile
MySQL-Tabellen zu erstellen.
Im SQLite-Manual hingegen wird darauf hingewiesen, dass in SQLite einfache Hochkommas verwendet werden wie in Pascal. Allerdings muss ich zugeben, dass mir nicht bekannt ist, in welcher Form SQLite Tabellennamen erwartet. Zur Zeit kann ich das nicht nachschlagen - die Waschküche wartet.
***
Gruss
Delbor
* Zumindest nur dann kann mit Forward- oder Reverse Engineering gearbeitet werden.
** Sorry, ich hab den Namen "
MySQL Workbench daurch abgekürzt,dass ich den ersten Teil weggelassen habe. Das hätte ich gleich im ersten Thread schreiben sollen.
*** PS: Heute Samstag habe ich das Manual durchsucht, aber nirgends etwas explzit zu Tabellennamen gefunden. Beispielcode hingegen steht genug da - und da nirgends Hochkommas, ausser wenn ein Wert in eine Spalte als String geschrieben werden soll:
Delphi-Quellcode:
CREATE TABLE t1 (a INT, b VARCHAR (10));
INSERT IN t1 (a, b) VALUES ('123', 456);