diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2013-10-24 08:53:55 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2013-10-24 08:53:55 +0200 |
commit | 33a8e17efb8c622413a861047c5c4589a9828f62 (patch) | |
tree | f726d0ce0ec1ecd007dc0fa6f84378cf2bb82c18 /evolution/add-table | |
parent | ec63060967e1c764e80655e8fd3bf40bd3872efd (diff) |
Diffstat (limited to 'evolution/add-table')
-rw-r--r-- | evolution/add-table/driver.cxx | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/evolution/add-table/driver.cxx b/evolution/add-table/driver.cxx index bd62068..da4677e 100644 --- a/evolution/add-table/driver.cxx +++ b/evolution/add-table/driver.cxx @@ -13,6 +13,7 @@ #include <odb/transaction.hxx> #include <odb/schema-catalog.hxx> +#include <common/config.hxx> // DATABASE_XXX #include <common/common.hxx> #include "test2.hxx" @@ -45,11 +46,20 @@ main (int argc, char* argv[]) if (embedded) { + // SQLite has broken foreign keys when it comes to DDL. + // +#ifdef DATABASE_SQLITE + db->connection ()->execute ("PRAGMA foreign_keys=OFF"); +#endif transaction t (db->begin ()); schema_catalog::drop_schema (*db); schema_catalog::create_schema (*db, "", false); schema_catalog::migrate_schema (*db, 2); t.commit (); + +#ifdef DATABASE_SQLITE + db->connection ()->execute ("PRAGMA foreign_keys=ON"); +#endif } object o (1); |