問題タブ [sqlsrv]

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 投票する
2 に答える
669 参照

php - PHP SQLSRV ドライバー エラー

sqlsrv_connect() 関数を呼び出すスクリプトを Eclipse でデバッグしています。私の開発環境は、Zend Server CE を使用してセットアップされました。インストール時に、ドライバーを含めるオプションをチェックし、PHPInfo ページを使用して適切にインストールされていることを確認しました。以下のスニペットは、登録済みの PHP ストリームを示しています。そこに sqlsrv があることがわかります。

ただし、デバッグ中に sqlsrv_connect() を呼び出す行にヒットすると、次のエラーが発生します。

なぜこれが起こっているのかわかりません。Eclipse で調整が必要な構成はありますか? どんな助けでも大歓迎です。

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

php - SQLSRV の行の ID を取得する

私はPHPでこのステートメントを持っています

結果の各行で次のオブジェクトを返します。私が疑問に思っているのは、結果自体に関する識別子があります。私自身がテーブルに ID を持っていますが、返された特定の結果の ID があるかどうかを知りたいです。

編集:そうでない場合、これをサポートする sqlsrv_fetch_object 以外に使用できる代替関数はありますか?

0 投票する
4 に答える
33211 参照

php - Linux に SQLSRV ドライバーをインストールするか、他の UTF-8 対応ドライバーをインストールしますか?

SQLSRV は、 UTF-8文字列を (NVARCHARの代わりに) 2 バイト列に格納できる PHP 用の唯一のドライバーであり、VARCHAR現在 Microsoft によって PHP 5.2.X および 5.3.X 用に維持およびサポートされています。

また、これらのドライバーをダウンロードするためのリンクも取得しましたLinux用のLinux SQLSRVドライバーのダウンロードですが、構成できませんでした。

誰かがLinux でsqlsrvドライバーを構成する方法を知っている場合、またはSQLサーバーからUTF-8形式でデータを取得するための他の方法がある場合は、共有してください。

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

php - PDO から SQLSRV へ

以前は MYSql に PDO を使用していましたが、現在は Microsoft SQL Server Driver for PHP を使用する必要があります。

マニュアルを見つけました。 http://php.net/manual/en/book.sqlsrv.php

例 2 を使用して新しい SQL データベースに接続します: http://www.php.net/manual/en/function.sqlsrv-connect.php

次の (PDO mysql) を sqlsrv で動作するように「変換」するにはどうすればよいですか。

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

php - SQLSRV クエリを使用した PHP の While ステートメント

次のPHPコードがあります。

現在出力しています:

しかし、私はそれを出力したい:

最初に発生するように 2 番目の while ステートメントを移動すると、そのステートメントは正しく出力されます。これにより、この方法で 2 つの while ステートメントを続けて実行することはできないと信じるようになりましたが、代替手段が何であるかはわかりません。助けてくれてありがとう!

0 投票する
5 に答える
6834 参照

sql-server - sqlsrv ドライバーは codeigniter で遅いですか?

CI 2.1.3 の最新バージョンをインストールしました

クエリを実行した後、次のような非常に単純なものに対して応答時間が非常に遅くなります。

リモートデータベースにクエリを実行した後。(SQL サーバー 2008)

同じリモート データベースに対して単純な PHP スクリプトでこの同じクエリを実行すると、すぐに結果が出ます。

a) codeigniter の sqlsrv ドライバーでこの問題を経験した人はいますか?

もしそうなら、どのように解決しましたか?

ここに私の接続文字列があります:

アップデート:

プロファイラーを実行すると、次のことがわかりました。

DATABASE: データベース QUERIES: 1 (非表示) 0.0659 select * from Contacts

読み込み時間: 基本クラス 0.0428 コントローラー実行時間 ( Welcome / AzureBash ) 58.2173 合計実行時間 58.2602

クエリは 0.06 秒で実行されているように見えますが、コントローラーの読み込みには 1 分かかります。

なぜこれが起こっているのか分かりません。

解決

最新の SQLSRV ドライバーのアクティブ レコード インターフェイスにはバグがあります。

そのため、既存のインターフェイスをダウンロードして上書きします (CI のデータベース フォルダーにある sqlsrv フォルダーを上書きします)。

http://www.kaweb.co.uk/blog/mssql-server-2005-and-codeigniter/

注: これらは SQL Azure でテストされ、動作します。

$query->num_rows(); はこれらのドライバーでは機能しないため、代わりに count を使用することをお勧めします。または、独自のラッパーを作成します。

さらに、日付は結果セットの日付オブジェクト タイプになりました。

これが役立つことを願っています。

解決策 2

何らかの理由で、これを完全に使用できなくするバグを見つけた場合。最初に提供された sqlsrv インターフェイスに戻します。問題の原因は、元のインターフェイスがクエリを実行する方法であることがわかります。したがって、データベース ヘルパー クラスを作成します。$sql = $this->db->last_query(); を使用します。実行しようとしていたクエリを取得し、database_helper クラス内で自分で実行します。

row_array 用に作成します。

アプリのどこからでも、この関数を直接呼び出すことができるはずです。active_records がクエリを構築する方法を利用しながら。

理想的な解決策ではありませんが、codeigniter が SQLSRV クラスをソートするまで、できることはあまりありません。

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

php - DBに失敗した行があるかどうかをphp sql_srvチェック

私はPHPの知識がほとんどないAndroid開発者です。Google プッシュ通知を使用して正常に動作するアプリがあります。私が抱えている問題は、同じ電話が Google に登録されたときに、Google からの regID を DB に保存する必要があることです。アプリを電話に 4 回プッシュすると、DB に 1 台の電話を指す 4 行が表示されます。

DB をチェックして、特定の regID のレコードが存在するかどうかを確認しようとしています。これを行うために sqlsrv_has_rows() を使用しようとしています。以下のコードはコンパイルされますが、レコードが存在するかどうかに関係なくレコードを挿入しません。

誰が問題が何であるかを見ることができますか?

前もって感謝します、

マット

[編集1]

[編集2]

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

php - Windows 2008 Server 2008 R2 に pdo_sqlsrv をインストールするにはどうすればよいですか?

PDO を使用して SQL Server データベースに接続しようとしています。SQL Server に接続しようとしているページで、この致命的なエラーが発生します。

致命的なエラー: 例外 'PDOException' がキャッチされず、メッセージ 'SQLSTATE[IMSSP]: この拡張機能を使用するには、Microsoft SQL Server 2012 Native Client ODBC ドライバーが SQL Server と通信する必要があります。次の URL にアクセスして、x86 用の Microsoft SQL Server 2012 Native Client ODBC ドライバーをダウンロードします: http://go.microsoft.com/fwlink/?LinkId=163712 '

http://www.microsoft.com/en-us/download/details.aspx?id=20098 (SQLSRV30.EXE)からドライブをダウンロードし ました サーバーに php がインストールされている ext ディレクトリにこれらのドライバーを配置しました2008 R2 サーバー。

また、php.ini ファイルの拡張子リストの最後にこれらの 2 行を追加しました。

PH PVersion 5.3.19 を使用しています サーバー API CGI/FastCGI スレッド セーフティが無効になっています

表示されますpdo_sqlsrvが、クライアント API バージョンが表示されません。

PDO を使用して SQL データベースを持つリモート サーバーに接続できるようにするには、他に何をする必要がありますか? リモートサーバーに何かインストールする必要はありますか?

これは、私の php の管理セクションのスクリーンショットです。

ここに画像の説明を入力

これは私の接続クラスです

これは、クラスを使用してデータセットを取得する方法です

このコードを試してみたので、クラスを使用しませんが、それでも同じエラーが発生します