1

私はどこでも解決策を探してきましたが、ますます混乱しています。

FreeTDS を使用して PHP から SQL Server 2008 データベースに接続しようとしています。サーバーは MediaTemple DV 4.0 で、CentOS 5.7 を実行しています。数か月前にコンパイルしたと思われるバージョンの FreeTDS (v0.91) がインストールされています。tsql -C を実行すると、freetds.conf が /usr/local/etc にあり、TDS バージョン 5.0 であると表示されます。TDS バージョン 7.0 にする必要がありますが、その conf ファイルを変更しても変更されません。そして、使用しているconfファイルが見つかりません。(問題1)

tsql -H -p -U を使用してデータベースに接続し、クエリを実行できます。ただし、私のphpファイルでは、DBへの接続エラーであると思われるIM002エラーが発生します。そのために odbc_connect を使用します。(問題2、最大の問題)

過去 2 か月間、インストールとアンインストールを行ってきたので、どこから始めればよいかさえわかりません...

問題を解決する方法についての提案を歓迎します。ちなみに、MediaTemple で DV をアップグレードする前は機能していました。

ありがとう!ショーン

ここに私の tsql -C があります

コンパイル時の設定 (「configure」スクリプトで確立) バージョン: freetds v0.91 freetds.conf ディレクトリ: /usr/local/etc MS db-lib ソース互換性: いいえ Sybase バイナリ互換性: いいえ スレッド セーフ: はい iconv ライブラリ:はい TDS バージョン: 5.0 iODBC: いいえ unixodbc: はい SSPI「信頼できる」ログイン: いいえ Kerberos: いいえ

4

2 に答える 2

0

SQL Server 2008は、SQLServer7に対応する7.0ではなくTDSバージョン7.3を実際に必要としています。

FreeTDSのデバッグについてはサポートを提供できませんが、雇用主の提供のように、問題を修正するインセンティブがある商用ドライバーを試してみてください。2週間は無料でテストできます。

また、iODBC.orgサイトで、ODBCでのPHPの使用に関するドキュメントも提供しています。

于 2012-11-05T21:12:24.747 に答える
0

odbcinst.ini でデバッグがオンになっていること、および定義されたログ ファイルにエラーが送信されていることを確認します。

iSQL ツールを使用して接続してクエリを実行し、デバッグ ログにエラーがないか確認してください。このツールは unixODBC パッケージに付属しており、DSN を使用してデータベースに接続します。

このページも参照してください: isql が接続されず、tsql が接続される場合があります。

于 2013-08-11T14:23:34.390 に答える