SqlTool ne commet pas de données après quitter (HSQLDB)
Question
je ne comprends vraiment le SqlTool ... je veux juste importer un fichier SQL dans la base de données et CHOISI cette commande pour faire ceci:
java -jar ~/bin/sqltool.jar --autoCommit --inlineRc URL=jdbc:hsqldb:file:/path/to/my/database.hsqldb,USER=SA,PASSWORD='' database.sql
dans le database.sql est d'autant créer des choses, comme:
create table foo(id identity, name varchar(256));
alors j'ai un second script, appelé data.sql, qui devrait être inscrit dans la base de données même, dans celui-ci est tout mon truc de testdata:
insert into foo(name) values('bla');
quand j'exécute maintenant mon script bash, le SqlTool crée une nouvelle base de données (avant que je supprimé le fichier), mais ne fait rien avec le fichier SQL! La première va de script sans erreur, mais le second dit:
SEVERE SQL Fehler an 'data.sql' Zeile 1:
"insert into foo (name) values('bla')"
user lacks privilege or object not found: FOO
org.hsqldb.cmdline.SqlTool$SqlToolException
quand je me connecte maintenant à la base de données et dire \dt
il n'y a pas de table!
i mettre également commit;
à la fin de chaque fichier et opend le SqlTool avec --autoCommit
mais ce travail ne marche pas non plus ... ce qui se passe là-bas?
La solution
hsqldb nécessite commande SHUTDOWN avant la dernière fermeture de connexion ou une propriété de connexion JDBC, arrêt = true. Voir docs .