■プロフィール

mimizuno

Author:mimizuno

■最近の記事
■最近のコメント
■最近のトラックバック
■月別アーカイブ
■カテゴリー
■ブロとも申請フォーム
■ブログ内検索

■RSSフィード
■リンク
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


スポンサー広告 | --:--:--
BCCでSQLite その2
コメントで気づいたけど、前回の記事で書き忘れてたことがあった。

そのままのsqlite3.hだと
エラー E2232 sqlite3.h 3084: <定数> メンバー 'sqlite3_index_info::nConstraint' のクラスにコンストラクタがない

のようなエラーが出る。

これを直すにはsqlite3.hを少し編集する必要がある。
sqlite-source-3_5_0.zipに含まれているsqlite3.hの場合
3061行のconst int nConstraint;を
/*const*/ int nConstraint;
のようにconstをコメントアウトする。(削除してもいい)
同様に3067行、3068行、3072行、3078行のconstを削除する。
このとき*constの*は消さないこと。
最終的にsqlite3.hの3059行辺りは以下のようになる。

struct sqlite3_index_info {
/* Inputs */
/*const*/ int nConstraint; /* Number of entries in aConstraint */
const struct sqlite3_index_constraint {
int iColumn; /* Column on left-hand side of constraint */
unsigned char op; /* Constraint operator */
unsigned char usable; /* True if this constraint is usable */
int iTermOffset; /* Used internally - xBestIndex should ignore */
} */*const*/ aConstraint; /* Table of WHERE clause constraints */
/*const*/ int nOrderBy; /* Number of terms in the ORDER BY clause */
const struct sqlite3_index_orderby {
int iColumn; /* Column number */
unsigned char desc; /* True for DESC. False for ASC. */
} */*const*/ aOrderBy; /* The ORDER BY clause */

/* Outputs */
struct sqlite3_index_constraint_usage {
int argvIndex; /* if >0, constraint is part of argv to xFilter */
unsigned char omit; /* Do not code a test for this constraint */
} */*const*/ aConstraintUsage;
int idxNum; /* Number used to identify the index */
char *idxStr; /* String, possibly obtained from sqlite3_malloc */
int needToFreeIdxStr; /* Free idxStr using sqlite3_free() if true */
int orderByConsumed; /* True if output is already ordered */
double estimatedCost; /* Estimated cost of using this index */
};


この修正で特に問題はおきないと思うけど、そこらへん未確認

スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ

bcc | 17:28:54 | Trackback(0) | Comments(2)

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。