HDBC-sqlite3 haskellライブラリを使用して外部キーを有効にしようとしています。このライブラリは小さなヘルパー関数を使用していますSqliteの外部キー
int sqlite3_open2(const char *filename, finalizeonce **ppo)
これは、sqlite3_open
を呼び出します。 sqlite documentationでは、私は外来キーを有効にすると思われるnice sqlite3_db_config
関数を見つけました。それをテストするために、私は(リストの2つの最後のもの)sqlite3_open2
に素早く2行を追加しました:Foreign Keys: ON/OFF:0 ERR:1
:
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);
...
私の驚きは結果でした。
誰かが私に何か間違っているのか、何が外来キーを有効にする適切な方法になるのかをヒントできますか? docsによると
あなたのソリューションは動作します。あなたはハスケルのレベルで私の問題を解決する方法を尊重して私の目を開いた。私がそれを終えると私はここに投稿します。 – bartoszw