4

php's標準mssql_select_db機能でデータベースを選択しようとすると、次のエラーが表示されます: USE statement is not supported to switch between databases. Use a new connection to connect to a different Database. (severity 16). だから私はここからどこへ行くべきか困惑しています。

接続コード:

$link = mssql_connect('dsn', 'user@server', 'password');

if (!$link) {
   die('Unable to connect!');
}

if (!mssql_select_db('db', $link)) {
   die('Unable to select database!');
}

$result = mssql_query('SELECT * FROM yourtable');

while ($row = mssql_fetch_array($result)) {
   var_dump($row);
}

私のシステム設定は次のとおりです。

  • Ubuntu 12.10
  • PHP5
  • アパッチ2
  • 無料TDS
  • unixODBC
  • SQL アズール

また、私はこのガイドに従っていました。

4

1 に答える 1

3

上記の@Pondlifeの最後のコメントに応えて、彼は答えを出していないので、彼が自分で投稿するまで、私は彼のためにそれを行います。

@Pondlifeコメント:

私自身はAzureの経験はありませんが、エラーメッセージは非常に明確です。SQLAzureでUSEを使用してデータベースを変更することはできません。特定のクライアントライブラリがUSEコマンドを発行するのを防ぐ方法や方法はわかりませんが、mssql_select_db()呼び出しを完全に削除して、ODBCDSNで正しいデータベース名を指定してみます。うまくいけば、それはあなたが使用したいデータベースに直接接続するでしょう。-PondLife _

于 2013-01-05T00:13:48.587 に答える