問題タブ [mdb2]

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.

0 投票する
1 に答える
122 参照

php - 単純なクエリを実行すると EXPLAIN ステートメントが生成されるのはなぜですか?

MDB2 を使用して MySQL データベースにクエリを実行していますが、データベースにクエリを実行すると、MySQL ログは 2 つのステートメントをトレースします。最初のステートメントは Explain ステートメントで、2 つ目はクエリです。

コードは次のとおりです。

そして、MySQL で次のログを取得します。

誰かが何が起こっているのか、これを防ぐ方法を説明できますか?

よろしく
アルバン

0 投票する
1 に答える
367 参照

php - PEAR::DBからPEAR::MDB2にアップグレードすることの本当の利点はありますか?

非常に大規模なレガシーコードベースがあり、MDB2にアップグレードすることに本当の利点があるかどうか疑問に思いました。

考え?スピード?読みやすさ?バグが少ない?何かありますか?

ありがとう

0 投票する
2 に答える
969 参照

php - $mdb2->lastInsertID() がその接続の自動インクリメント値を確実に返すようにするには、何をする必要がありますか?

最近、SQL Server から MySQL に切り替えましたが、この質問に対する確かな答えがどこにも見つかりません。

ロックする必要があるテーブルでは、PHP、MySQL、および InnoDB テーブル エンジンを使用しています。したがって、標準的な一連の 3 つのステートメントの場合:

  1. テーブル A に挿入
  2. $id = $mdb2->lastInsertID()
  3. テーブル B に挿入 (name, fk) VALUES ('foo', $id)

$id に手順 1 の挿入の値があることを確認するには、どのような手順を実行する必要がありますか? このままでいいの?すべてをトランザクションにする必要がありますか? テーブルをロックおよび解放するには、他のクエリを追加する必要がありますか?

みんなありがとう。

0 投票する
1 に答える
291 参照

php - DB->query を使用した MDB2 プレースホルダーの短縮形

pear:DB 拡張機能が非推奨になったことに気付き、いくつかのスクリプトを MDB2 に更新する作業を行っています。プレースホルダーの配置が面倒なのが少し残念です。何か不足していますか?pear:DB コンストラクトと同等の利用可能な省略形はありますか:

私が知る限り、同じ結果 (しゃれは意図していません) を達成するには、いくつかの行と MDB2-prepare()、MDB2->execute() などの呼び出しが必要です....

MDB2 で使用できる短縮構文はありますか?

0 投票する
1 に答える
366 参照

php - cpanel 移行済みアカウントのエラー (PEAR/MDB2)

cpanel サーバーのサイトは正常に機能していましたが、新しいサーバーに移行したときに MDB2 エラーが発生しました。

致命的なエラー: 行 2547 の /home/lubrican/public_html/clientes/PEAR/MDB2.php の非オブジェクトに対するメンバー関数 tableInfo() の呼び出し

( PHP コード: http://pastebin.com/N7jf5Mkf )

標準の cpanel ツールを使用してサイトを移行しましたが、すべてのファイルが完全に見えます。

データベースで任意の検索を実行できるため、MDB2 ライブラリは機能しているようです。

問題は、データベースにレコードを追加するときです。

ヒントはありますか?

前もって感謝します

0 投票する
1 に答える
3841 参照

php - pearmdb2を使用して問題の原因をデバッグする方法

次のエラーが発生します

MDB2エラー:サポートされていません

そして、私は正確に何がサポートされていないのか分かりません。上記のコードは、MDB2マニュアルのpearによって与えられた例です。誰かが私が欠けているものを提案できますか?ありがとう

0 投票する
2 に答える
1855 参照

php - Pear MDB2によって生成されたSQLを実行せずに取得するにはどうすればよいですか?

私はPHP5.3でPearMDB2を使用しています。DBを更新するプロジェクトをコーディングしていて、データの変更を開始する前に、autoPrepare()とexecute()によって生成されたSQLクエリが実際に実行される前にどのように見えるかを確認したいと思います。

次のような更新クエリを作成して実行する予定です。

autoPrepare()にアクセスすると、値のプレースホルダーを使用して生成されたSQLを確認できることはすでに知っています$stmt->query実際にクエリをDBに送信せずにexecute()、プレースホルダーの代わりに値を使用して、によって生成された完成したSQLを確認したいと思います。

どうやってやるの?

0 投票する
1 に答える
3794 参照

php - PHP オブジェクトで MDB2 に接続する

私は自分の DB に接続するためにこれを行います。これを Connect.php という別の php ファイルに入れ、すべてのページでそれを必要とします。

ただし、関数内でクエリを実行する必要がある場合、$mdb2 を引数として関数に渡す必要がありますか? これは正しい方法ですか?

さらに、DB にクエリを実行するクラスを作成しています。そして、私は何をすべきかわかりません(引数として渡したくありません)

毎回接続を再確立する必要がありますか (つまり、接続用の関数を作成します)。

接続を永続的かつグローバルにすることはできませんか?

0 投票する
2 に答える
6025 参照

php - PEARMDB2を使用してIIS上のPHPからMSSQLに接続する

ここでこれを尋ねなければならないのは残念です。php.netは、これに関する例外と言い訳でいっぱいのようです。

PHP5.3.6でIIS6.0を実行しています。MDB2をインストールして動作させています(ブランド外のRDBMS用にカスタム作成されたドライバーを使用している場合でも)。それはすべてうまくいっています。しかし今、私はPHPを少し標準的なテクノロジーであるMSSQLに接続する必要があります。

問題は、MDB2のmssqlドライバーでは、PHPが特別なフラグを使用してコンパイルされている必要があることです。phpバイナリで行うのは難しい:)。

コンパイラーを入手し、ソースをダウンロードして再コンパイルすることもできますが、実際に仕事を遂行するためのより良い、より標準的な方法があるのに、私は雑草の中にいるのではないかと思い始めています。

したがって、私の質問は次のとおりです。IIS6 + PHP 5.3.6の場合、MS SQLに接続するための別の、より簡単で、より一般的なルートはありますか?