I'm not willing to make many guesses, or spend much of my day making them, but I do have a couple: Perhaps you are using :memory: as your database name. Those DBs are assured a lifetime not extending beyond closing the connection. Perhaps your tables are being created as temporary ones. Without seeing your DDL, this is among the prime candidates. I could go on, but that's enough guessing for today.