Ik heb een wat vreemd gedrag gemerkt toen ik een ER modelletje had gemaakt in DBDesigner4 en dit "Create script" dat hieruit kwam wilde draaien in MySQL.
Ten eerste heb ik deze tabel:
Ik zal het maar vertellen, het gaat om het type
. Ik krijg een Error nummertje 1050, wat betekent dat er iets met de foreign key constraints mis is.
Ik wil dus transactie ondersteunende tabellen, maar het liefst innoDB omdat deze op rij niveau lockt en BDB op page niveau.
Ik heb wat zitten knutselen hiermee en het lijkt alsof bij innoDB een Foreign key meteen ook primary key moet zijn en niets anders.
Heb ik hier nu een bug gevonden???
Kan me niet voorstellen dat dit ontworpen functionaliteit is...
Ten eerste heb ik deze tabel:
code:
Maar dan deze:1
2
3
4
5
6
7
8
9
10
| CREATE TABLE s_gebruiker ( loginNaam VARCHAR(15) NOT NULL, isAdministrator BIT NOT NULL, startDatum DATETIME NULL, eindDatum DATETIME NULL, isPersoon INTEGER(11) NULL, PRIMARY KEY(loginNaam), INDEX NONCLUSTERED(loginNaam) ) TYPE=InnoDB; |
| Deze werkt niet: | Deze werkt wel: | ||||
code:
| code:
|
Ik zal het maar vertellen, het gaat om het type
Ik wil dus transactie ondersteunende tabellen, maar het liefst innoDB omdat deze op rij niveau lockt en BDB op page niveau.
Ik heb wat zitten knutselen hiermee en het lijkt alsof bij innoDB een Foreign key meteen ook primary key moet zijn en niets anders.
Heb ik hier nu een bug gevonden???
Kan me niet voorstellen dat dit ontworpen functionaliteit is...