1

Laravel/SQLite を使用して Web サイトの開発を開始しています。

PRAGMAデータベース構造からいくつかの情報を表示する必要があるため、SQLite が提供するステートメントを使用しようとしています。

私の質問は、プラグマ クエリでバインド ツールを使用できますか?

古き良き方法はうまくいきます:

    DB::select('PRAGMA table_info(\''.$value->name.'\')');

バインディングを使用しようとすると:

    DB::select('PRAGMA table_info( ? )', array($value->name));

このエラーが発生します:

    SQLSTATE[HY000]: General error: 1 near "?": syntax error (SQL: PRAGMA table_info( migrations ))

DB の特定のクエリとのバインドが許可されているかどうかは、ドキュメントには記載されていません。そうは思いませんが、バインディング ツールのドキュメントが見つからないので、間違っている可能性があります。

4

1 に答える 1

3

パラメータは式のプレースホルダです。テーブル名 (PRAGMA 内またはその他のステートメント内) は式ではなく識別子であるため、パラメーターにバインドすることはできません。

于 2013-11-12T12:24:09.030 に答える