次のコードがあります。
import pyodbc
cnxn = pyodbc.connect("DRIVER={SQL Server};"
+"SERVER=somesqlserver2008.example.com;"
+"DATABASE=exampledatabase;")
cursor = cnxn.cursor()
#do stuff...
上記のコードは問題なく実行されます。ただし、このコードは実際には「背後で」(いわば) なんらかの形式の資格情報を渡していると信じる理由があります。たとえば、次のコード:
cnxn = pyodbc.connect("DRIVER={SQL Server};"
+"SERVER=someOTHERsqlserver2008.example.com;"
+"DATABASE=exampledatabase;")
cursor = cnxn.cursor()
戻り値:
Traceback (most recent call last):
File "C:\Users\<my username>\Documents\sql_connect_test1.py", line 27, in <module>
+"SERVER=someOTHERsqlserver2008.example.com;")
Error: ('28000', "[28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '<user name appears here>'. (18456) (SQLDriverConnect); [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '<user name appears here>'. (18456)")
2 番目の接続文字列でユーザー名とパスワードを指定していませんが、ユーザー名とパスワードが pyodbc によって使用されているようです。使用されたユーザー名とパスワードを確認するにはどうすればよいですか?