2009-07-16 5 views
7

Alors, voici un code:Stocker des chaînes longues (CLOB) dans des bases de données Hsqldb?

statement.executeUpdate("CREATE TABLE SomeTable(id INTEGER IDENTITY, " + 
    "text CLOB)"); 

qui jette une exception "Mauvais type de données: CLOB dans la déclaration [...]". Existe-t-il un moyen de stocker des CLOB dans les bases de données Hsqldb? La documentation dit que c'est. Ou peut-être que ma connaissance de SQL est si rouillée que j'ai oublié comment les définir.

Répondre

10

Essayez LONGVARCHAR au lieu de CLOB

+0

Yup. Aussi simple que cela! – Marcin

+4

Bonne réponse mais cela n'explique pas pourquoi le 2.2.8 donne une telle erreur et il devrait être supporté. –

+0

J'ai le même problème avec la version 2.3.2 –

4

Dans la version 2.0 et plus, CLOB est un type pris en charge. Pour votre exemple, vous devez ajouter explicitement KEY PRIMARY.

statement.executeUpdate("CREATE TABLE SomeTable(id INTEGER IDENTITY PRIMARY KEY, " + 
    "text CLOB)"); 
Questions connexes