2

私が試した次のクエリは、データベースを使用してsqlite managerで実行している間は正常に機能していますが、Cプログラムで同じものを実行しようとすると、クエリが実行されません。

Query: "SELECT * FROM Object WHERE Path like ? "

クエリ実行の順序:

sqlite3_prepare_v2
sprintf(buf,"'/%d -%%%%'",objNum); (buf= '/x -%%')
sqlite3_bind_text
sqlite3_step

テーブル(オブジェクト)の行の例

Path                  artist        album       genre
/0 - xxxx.mp3         xxxxx        yyyyy        zzzzz
/1 - aaaa.mp3         wwwww        yyyyy        qqqqq

表の残りの詳細を取得するには、パスの先頭にある番号を使用する必要があります。どんな助けでも大歓迎です。:)

4

1 に答える 1

1

パラメータ文字列に一重引用符を使用しないでください。パラメータ内のすべてのデータは、変更なしで直接取得されます。使用する:

sprintf(buf, "/%d -%%", objNum);
于 2012-12-30T18:18:26.140 に答える