まず第一に、私は本当に初心者です。 (気の毒だと思う) 次に、php を mssql サーバーに接続しようとしました。 第三に、sqlsrv、pdo_sqlsrv、msodbcsql.msi をインストールしました。 しかし、接続しようとするとまだエラーメッセージが表示されます
私の PHP バージョンは 8.0.10、x64 です。 mssqlサーバー2012。
接続をテストするための私の php コード:
リーリーその後、エラーが発生し、msodbcsql.msi をインストールするように指示されたので、指示に従ってインストールしました。しかし、その後、解決できない新しいエラーが表示されます。
Array ( [0] => Array ( [0] => 08001 [SQLSTATE] => 08001 1 => -2146893019 [コード] => -2146893019 2 => [Microsoft][ODBC] [ドライバー 18 for SQL Server] SSL プロバイダー: 証明書チェーンは信頼できない機関によって発行されました [メッセージ] => [Microsoft][ODBC Driver 18 for SQL Server] SSL プロバイダー: 証明書チェーンは信頼できない機関によって発行されました。 ) 1 => Array([0] => 08001 [SQLSTATE] => 08001 1 => -2146893019 [コード] => -2146893019 2 => [Microsoft][ODBC Driver 18 for SQL Server]クライアントは接続を確立できません [メッセージ] => [Microsoft][ODBC Driver 18 for SQL Server]クライアントは接続を確立できません) )
追加情報: dbeaver (別のコンピューター) を mssql サーバー (同じサーバー) に接続しても問題はありません。
###よろしくお願いします###
ODBC ドライバー 18 の代わりに ODBC ドライバー 17 を使用したところ、問題は解決しました。私の場合、暗号化は必要ないので、ドライバー 17 で十分です。
TrustServerCertificate を 1 として定義する方法を疑問に思っている人がいるかもしれないので、これが私が行った方法です。次のようにパラメーターを新しい配列要素として追加しました
リーリー