halconデータベースモジュールの問題

WBOY
リリース: 2016-08-04 09:19:49
オリジナル
1238 人が閲覧しました

同社はデータベースを操作するために halcon が提供するクラス ライブラリを使用せず、PhalconDbAdapterPdoMysql を使用して再カプセル化しましたが、その中の多くのメソッドに問題があることがわかりました。

例えば

$statement = $db->prepare('SELECT * FROM robots WHERE name = :name');

$result = $connection->executePrepared($statement, array('name' => 'Voltron') );
このコードはスムーズに実行されず、常に間違った値のエラーを報告します

そしてこれ

$resultset = $connection->query("SELECT * FROM robots WHERE type='mechanical'");
$resultset = $connection->query("SELECT * FROM robots WHERE type=?" , array("mechanical"));
返されるのは配列ではありませんが、説明メソッドを使用して配列の結果セットを再度取得できるという説明はありません

とにかく、待ってください。 。 。 上記の例はすべて公式ドキュメントからのものです

返信内容:

同社はデータベースを操作するために halcon が提供するクラス ライブラリを使用せず、PhalconDbAdapterPdoMysql を使用して再カプセル化しましたが、その中の多くのメソッドに問題があることがわかりました。

例えば

$statement = $db->prepare('SELECT * FROM robots WHERE name = :name');

$result = $connection->executePrepared($statement, array('name' => 'Voltron') );

このコードはスムーズに実行されず、常に間違った値のエラーを報告します

そしてこれ

$resultset = $connection->query("SELECT * FROM robots WHERE type='mechanical'");

$resultset = $connection->query("SELECT * FROM robots WHERE type=?" , array("mechanical"));
返されるのは配列ではありませんが、説明メソッドを使用して配列の結果セットを再度取得できるという説明はありません

とにかく、待ってください。 。 。 上記の例はすべて公式ドキュメントからのものです

まず、「executePrepared」メソッドのプレースホルダーは数値である必要があります。文書の赤枠の英語版のように:

halconデータベースモジュールの問題つまり、SQL 内のパラメーター バインディング プレースホルダーは、次のように「?」に置き換える必要があります。 リーリー

次に、クエリ メソッド自体がオブジェクト インスタンスを返します。これについてはドキュメントで説明されており、配列を返す方法についても説明されています。

ここで別のサンプルコードを示します:

リーリー halconデータベースモジュールの問題フレンドリーなリマインダー: もっとドキュメントを読んでください:)

参考ドキュメント: リンクの説明

リンクの説明

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート