問題タブ [zend-db-profiler]
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 - firefox 4 と Zend Framework DB Profiler で firephp を使用した人はいますか?
コンソールにログが表示されません。ヘッダーにはログが表示されますが、コンソールには何も表示されません。Zend_Log_Writer_Firebug をテストしたところ、すべて正常に動作しました。
任意のヒント?
zend-framework - Zend Framework から DB に送信されるすべてのクエリを検査する方法
クライアントがログインしてクライアント データのレポートを表示できる複雑なレポート アプリケーションがあります。アプリケーションには、さまざまなコントローラーを使用してデータベース呼び出しが行われるセクションがいくつかあります。クライアント A がヘッダー操作によってクライアント B の情報を取得しないようにする必要があります。
システムが認証し、clientID と roleID を割り当てます。roleID >1 の場合は、データをホストしている会社で働いていることを意味し、すべてのクライアント情報を表示できます。基本的に次のように機能するキャッチオールを作成したいと思います。
問題は、サーバーに送信されるすべてのクエリに対してこれを実行することです...このコードをアプリケーションとDBの間の「障害物」として配置するにはどうすればよいですか? 私はすでに Zend_Profiler を使用してクエリを調べているので、何らかの形で可能であることはわかっていますが、プロファイラーのコードからこれを識別することはできません...
私はいつでも認証関数を作成し、選択したクエリをそのように渡すことができますが、このキャッチオールはすべての呼び出しで実装するのが簡単で、将来的にも保証されます. どんな助けでも大歓迎です。
php - テーブル名によるphp zend dbプロファイラーフィルター
zend db プロファイラーでテーブル名でクエリをフィルタリングする方法はありますか? ドキュメントには何もありませんが、このドキュメントに完全に依存できるかどうかはわかりません..方法を知っている場合は、アドバイスしてください..
php - Zend_Db_Profiler log to file
Is there a simple way to log to queries to a file? I have Firebug profiling working no problem with:
It would be nice to log this to a file with out writing a bunch of code.
Is there a class I can swap out with Zend_Db_Profiler_Firebug?
UPDATE: See my answer below.
php - 「GROUP BY」句を使用するとPHP SQLite PDOが非常に遅くなる
私はここでこのプロジェクトをフィラデルフィアの犯罪データで遊んでいます。このクエリを作成して、タイプと警察署ごとにインシデントを選択します。PHP と Zend では 21 秒かかりますが、コマンド ラインでは 3 秒未満です。
次のようなデバッグ出力で Zend_Db_Profiler を使用してデバッグします。
numQueries: 2
クエリ: 接続
経過秒数: 0.0019519329071045
クエリ: SELECT "インシデント".* FROM "インシデント" WHERE (dc_dist = '15') AND (lower(text_general_code) = 'homicide') GROUP BY "location_block"
経過秒数: 21.583115816116
同じ select ステートメントをコピーして sqlite3 コマンド ライン クライアントに貼り付けると、おそらく 3 秒かかります。
ここで何か不足していますか?Zend に 21 秒かかるのはなぜですか?
アップデート:
PDO を使用してスクリプトだけを実行しても、21 秒のクエリが発生します。
出力:
クエリに 21.751929998398 秒かかりました
2回目の更新
それをすべて保持しているのは、SQLステートメントへの追加によるグループのようです。それを削除して、pdo スクリプトまたは zend フレームワーク アプリケーションを実行すると、コマンド ラインから直接実行した場合と同じ速度に達します。
「GROUP BY」句を使用すると、23 秒:
numQueries: 2
クエリ: 接続
経過秒数: 0.0007779598236084
クエリ: SELECT "インシデント".* FROM "インシデント" WHERE (dc_dist = '15') AND (lower(text_general_code) = 'homicide') GROUP BY "location_block"
経過秒数: 23.092380046844
'GROUP BY' 句を使用しない場合、1 秒未満:
numQueries: 2 クエリ: 接続
経過秒数: 0.0011060237884521
クエリ: SELECT "インシデント".* FROM "インシデント" WHERE (dc_dist = '15') AND (lower(text_general_code) = 'homicide')
経過秒数: 0.080777883529663