SQL Serverに接続しようとすると "TypeError:型 'NoneType'の引数が反復不可能です。 。私は間違っていても、私の2番目のprint文は使用されないので、SQLサーバ自体に接続する行にエラーが生成されていると思います。Python pymssqlエラー "TypeError:SQLサーバーに接続するときに 'NoneType'型の引数が反復できません"
私はpymysql-2.1.3、およびパイソンを使用しています。これは、エラーになり3.5.1
server = getenv("####")
user = getenv("####")
password = getenv("####")
database = getenv("####")
print("hi")
conn = pymssql.connect(server, user, password, database)
print("hi2")
cursor = conn.cursor()
cursor.execute("####"
"SELECT Name, SourceTable, SourceTableID FROM dbo.Attachment WHERE Name LIKE '%icad%'")
conn.close()
print("Connect to SQL complete")
:私はなぜこれが起こっている見当がつかない
Traceback (most recent call last):
hi
File "C:/convert.py", line 62, in <module>
connect_to_sql()
File "C:convert.py", line 15, in connect_to_sql
conn = pymssql.connect(server, user, password, database)
File "pymssql.pyx", line 635, in pymssql.connect (pymssql.c:10734)
File "_mssql.pyx", line 1902, in _mssql.connect (_mssql.c:21821)
File "_mssql.pyx", line 552, in _mssql.MSSQLConnection.__init__ (_mssql.c:5891)
TypeError: argument of type 'NoneType' is not iterable
Process finished with exit code 1
- 接続に関数はpymssqlのドキュメントに正確に従います。
それが助け場合、私は以下のライブラリをインポートしています:
import os
from os import getenv
import pymssql
import subprocess
私はこの質問では、データベースの認証情報を削除した、しかし私は、私が管理スタジオを経由してSQLサーバーに接続できていて、彼らは仕事を知っています。
誰でもこのコードが機能しない理由を知っていますか?
このコードは 'connect_to_sql():'という名前の関数に含まれていますが、後で使用されますが、次のコードの一部は機密扱いになっています。私はそれが十分であることを望む。
バージョン2.xのpymssqlを使用していますか? – Pedru
はい、使用しているバージョンはpymssql-2.1.3です。質問を更新しています。 –
pymssql.connect()を呼び出す前に資格情報を印刷しようとしましたか?おそらく予期せぬものを通り過ぎているかもしれません。 – Pedru