問題タブ [doctrine-query]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - Doctrine - 準備されたステートメントだけでなく、実際の SQL を出力する方法は?
PHP ORMであるDoctrineを使用しています。次のようなクエリを作成しています。
そして、このように、必要に応じてさまざまなwhere句やものを関数に追加しています
後で、execute()
そのクエリ オブジェクトを -ing する前に、それを調べるために生の SQL を出力して、次のようにします。
ただし、完全なクエリではなく、準備されたステートメントのみを出力します。MySQL に何を送信しているのかを確認したいのですが、代わりに を含む準備済みステートメントを出力してい?
ます。「完全な」クエリを表示する方法はありますか?
php - Doctrine--> andWhere()で実際のSQL(DQLではない)を使用できますか?
PHPORMであるDoctrineを使用しています。Doctrine Queryを作成しましたが、さらに制御する必要があります。そこで、->andWhere(...)
メソッドを使用して新しいwhere句を追加し始めました。ただし、次のように、別のテーブルに基づいてサブクエリを実行する必要があります。
上記は機能しません。ただし、other_tableのDoctrineクラスはなく、doctrineはファイルのロードを試み続けますother_file.php
。これをDQLとして解釈していることがわかりました(右?)。どういうわけか、これをDQLとして解釈しないようにDoctrineに指示して、生のSQLを使用できるようにすることはできますか?
を使用できることはわかっていますDoctrine_RawSql
が、それにはこのクエリをすべて書き直す必要があります。中途半端な家があったらいいのにと思います。
php - Doctrine DQL execute pass パラメータ
DoctrineでこのDQLを使用しました
サーバーでクエリを確認すると、これが生成されたSQLです
では、引数が正しい場所にない理由を知る必要がありますか?
php - DQLで教義の関係を取得する
私は3つのテーブルを持っています:
私がやりたいのは、ユーザーが関連付けられているプロジェクトを返すDQLステートメントを作成することです。私は以下をエミュレートしようとしています:
Doctrineの指示を読んで、私は次のことを思いつきました(u。*は、selectステートメントで使用されていないことについて不平を言っているのでそこにあります):
ただし、返されるのは、関連するプロジェクトが入力された「Projects」プロパティを持つ単一のModel_Userオブジェクトを含むデータセットです。できればプロジェクトを返してもらいたいのですが、なかなかわかりません。出来ますか?
doctrine-query - 教義のクエリでプライマリ列を取り除く方法
Doctrineは常にクエリにID列を含めます。次に例を示します。
s.idが含まれているため(私は教義を求めていませんでした)、機能しません。そのid列を削除するにはどうすればよいですか?ここで生のSQLを使用しなければならないことは、教義の有用性を損ないます。
php - Doctrine2PlainValueが期待されます
DoctrineDQLクエリの実行に問題があります。これは私に与えるエラーです。
私のコードは次のようになります:
ここで、$idは現在のsession_idです。私のモデルは次のようになります:
sql - Doctrine ORMが1対多モデルのSQLクエリを作成しないのはなぜですか?
これには簡単な答えが必要なことはわかっていますが、理解できません。涙を流した後、ここの誰かが助けてくれることを願っています。
これが私のYMLモデルです。
ご覧のとおり、3つのリンクされたテーブルが生成されます。
ID-
複数のプロファイルを持つことができます
プロファイル-1
つのID
を持ちます-1つのプロファイルタイプを持ちます
プロファイルタイプ
-複数のプロファイルを持つことができます
これで、私のコードでは、IdentityとProfiletypeの生成されたモデルに対してクエリを実行できます。
例えば:
動作し、生成されます:
ただし、プロファイルテーブルでクエリを実行しようとすると、機能しません。次のような単純なクエリでも
失敗します。FROMのクラス名を「Profile」ではなく「Profiles」に変更してみました。まだ何もありません。
私が間違っていることについてのアイデア。
php - 1 つのアクションでテーブルに 2 つのリクエストがある場合の問題
一意のテーブルで 2 つのリクエストを伴うアクションがあります。要求の結果は異なる必要があります。
しかし、結果は私の 2 つの要求で同じであり、2 番目の要求からのものです。
php - Doctrine1.2で生成されたフィールドによる順序付け
preDqlSelect()コールバックを使用して、「仮想フィールド」を追加しています。ただし、モデルをクエリするときに新しいフィールドで並べ替えることができないため、コールバックが発生する前にクエリの検証を行う必要があります。
これが私のコールバックです:
そして、これが私の質問です:
これが私が得ているエラーです:
致命的なエラー:/ [REMOVED] /lib/doctrine/Doctrine/Query/Orderby.php:94スタックトレース:#0 / [REMOVED] / lib / doctrine /Doctrine/のキャッチされない例外'Doctrine_Query_Exception'とメッセージ'Unknowncolumntitle' Query / Abstract.php(2077):Doctrine_Query_Orderby-> parse('a.title')#1 / [REMOVED] /lib/doctrine/Doctrine/Query.php(1160):Doctrine_Query_Abstract-> _ processDqlQueryPart('orderby'、Array )#2 /[削除済み]/lib/doctrine/Doctrine/Query.php(1126):Doctrine_Query-> buildSqlQuery(false)#3 /[削除済み]/lib/doctrine/Doctrine/Query/Abstract.php(1137): Doctrine_Query-> getSqlQuery(Array、false)#4 /[REMOVED]/lib/doctrine/Doctrine/Query/Abstract.php(1106):Doctrine_Query_Abstract-> _ getDqlCallbackComponents(Array)#5 / [REMOVED] / lib / doctrine / Doctrine /Query/Abstract.php(1001):Doctrine_Query_Abstract->_preQuery(Array)#6 / [REMOVED]/lib/doctrine/Doctrine/Query/Orderby.phpの94行目の/srv/web/museumfounda