問題タブ [zend-db-select]
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 - ZF2 複雑な SQL が閉じる場所
Zend\Db\Sql で複雑な WHERE クローズを作成するにはどうすればよいですか? 「COLLATE utf_general_ci」または「REGEXP」を持つもの。また、クエリを必要な文字列としてフィードする方法は何ですか?
ありがとうございました!
sql - Zend Framework 2 の JOIN 句の ON 条件での IS、NULL、NOT、!、およびその他の予約文字列の引用に関する問題
関連付けテーブル ( ) を介して、スポーツ クラス/コース ( courses
) とそのトレーナー ( ) を選択する SQL ステートメントがあります。一部のコースには複数のトレーナーがいるため、関数を使用してトレーナー名を 1 つのフィールドに取得します。一部のトレーナー行は空 orであるため、トレーナーの句にand条件を追加します。trainers
courses_trainers
GROUP_CONCAT(...)
NULL
trainers.name IS NOT NULL
trainers.name != ""
ON
JOIN
SQL
声明
CourseTable
クラスの OO バリアント
生成されたJOIN
コードは次のようになります。
だから、ここに多くの引用があります。
などを引用してはならないことIS
をZF に「説明」する方法は?NOT
"
zend-framework2 - Zend 2.1: Db>Sql>Select を介して複数のスキーマ結合を行うことは可能ですか?
私は Zend の初心者で、Zend Select の抽象化に取り組んでいます。別のスキーマの別のテーブルを結合するクエリを作成しようとすると、少し問題が発生しました。
私が作成しようとしている mySql クエリは次のとおりです。
Zend/Db/Sql/Sql/Select を使用して、次の選択ビルダーをセットアップできますが、結果の SQL ステートメントで別のスキーマを設定するのに苦労しています。
\Zend\Db\Sql\TableIdentifier を使用してスキーマを設定しようとしましたが、アダプターの元のスキーマが置き換えられ、クエリに両方のスキーマを含める方法はないようです。
Sql/Selectを使用してこれを行う方法はありますか、それともZend Dbでこれを間違った方法で行っていますか?
助けてくれてありがとう
zend-framework - from() zend_db_select で複数のテーブルを追加する
このSQLにzend_db_selectを使用して複数のテーブルから選択する必要があります:
これは使用されるコードです:
zend_db_select が最初のテーブルだけを取得するため、t2.ids が列リストにないというメッセージ エラーが表示されます。
この問題を解決する解決策はありますか? かく
php - 次の mysql 選択を改善するにはどうすればよいですか?
私は現在、レガシーアプリケーションをリファクタリングし、少しずつ zend フレームワーク 1.12 に変換しています。
これを zend db に変換する方法について頭を悩ませていますが、これを 1 つのクエリで実行できる方法はありますか?
今のところ、最初にフォルダーのリストをフェッチしてから、フォルダーごとに追加のクエリを実行していることがわかります...これを1つのクエリとして実行すると、パフォーマンスが向上しますよね?
php - タイムスタンプを比較するためにこの zend_db_select ステートメントを作成する方法
これが私がやろうとしていることです。
最初にテーブルにクエリを実行して、ユーザーの IP が保持されているかどうかを確認したいと思います。2) 投票のタイムスタンプを現在のタイムスタンプと照合し、投票時間が 24 時間以上経過している場合は、再度投票できるようにします。彼が 24 時間に 1 回だけ投票できるようにします。
これは私の現在の zend_db_select ステートメントです。ロジックにいくつかの問題が発生しています
タイムスタンプを比較する方法に行き詰まっています。テーブルからタイムスタンプを取得し、現在の時刻がテーブルの値よりも小さいかどうかを確認する必要があります (24 時間追加)。
アドバイスをいただければ幸いです。
zend-framework - Zend_Framework 1.12 SQLSTATE[42000]: 構文エラーまたはアクセス違反: 1064 SQL 構文にエラーがあります
何よりも前に、この例外に関して尋ねられた複数の質問を認識しています。それらを調べましたが、特定の問題に対する答えが見つかりませんでした。ほとんどの質問は を使用していますがZend_Db_Table::getDefaultAdapter();
、私は使用していません。代わりに を使用してApplication_Model_DbTable_Name
いますが、それが可能かどうか疑問に思っています。
また、エラーが表示されたときに最初に確認したので、アクセスできます。データベースはローカルであり、MySqlWorkBench を介して同じユーザー/パスワードでアクセスします。
私の目標は、次のように、2 つの列がコントローラー アクションで設定された基準を満たすときに行を削除することです。
これが私の DbTable クラスです(本当に単純です):
吐き出すエラーは次のとおりです。
これが私の注意を引くものですAND (id=7))、余分な括弧を参照してください? それはどこから来ているのですか?
これが結果ですvar_dump($select->getPart(Zend_Db_Select::WHERE));
面白半分に、where 句の順序を入れ替えてみました。
出力は次のとおりです。
また、AND (unidad='Galería de Arte ULPGC') ) 2 番目の括弧があります。それが問題なのかどうかはよくわかりません (しかし、そうでなければ、何が間違っている可能性があるのか わからないためだと思います)。
where条件(idなど)を1つだけ使用してみましたが、問題なく削除されました。私は本当にあなたの助けに感謝します、ありがとう!
php - zend_db_select 挿入ステートメントを保護する
SQL ラッパーとして zend_db_select クラスを使用しています。次の挿入ステートメントが保護されているかどうかを知りたいです。(SQLインジェクションなどを防ぐメカニズムを提供するかどうか)
いくつかの引用符を使用してテーブルに行を挿入しようとしましたが、 \ でエスケープされませんでした。心配しすぎですか、それとも phpmyadmin が見やすいように \ を自動的に削除したのでしょうか? 混乱している。zend_db_selectがそのようなSQLインジェクションに対応していることをどこかで読みました。
アドバイスをいただければ幸いです。ありがとう