HDBC-sqlite3haskellライブラリを使用して外部キーを有効にしようとしています。このライブラリは少しヘルパーc-関数を使用します
int sqlite3_open2(const char *filename, finalizeonce **ppo)
これは順番にsqlite3_open
1つを呼び出します。sqliteのドキュメントで、外部キーを有効にすることになっている素晴らしいsqlite3_db_config
関数を見つけました。それをテストするために、私はすぐに2行を追加しましたsqlite3_open2
(リストの最後の2行):
int sqlite3_open2(const char *filename, finalizeonce **ppo) {
sqlite3 *ppDb;
finalizeonce *newobj;
int res, *resFK, resFK1;
fprintf(stderr, "DB pointer: %d\n", ppDb);
res = sqlite3_open(filename, &ppDb);
resFK1 = sqlite3_db_config(ppDb, 1002, 1, resFK);
fprintf(stderr, "\nForeign Keys: ON/OFF:%d ERR:%d\n", resFK, resFK1);
...
私の驚きは結果でした:Foreign Keys: ON/OFF:0 ERR:1
。
誰かが私に何が間違っているのか、または外部キーを有効にする適切な方法は何であるかについてのヒントを教えてもらえますか?