3
私はSQLデータベースにわずかに異なる方法で接続しようとしています。なぜパラメータを使わなくてもうまく動作するのですが、パラメータを使うとエラーになります。 構文エラーがありますか? 私は各手紙を見て何も見ることができませんでした。DSNもSERVERキーワードもPython3を提供していません
import pandas as pd
import pyodbc
#parameters:
server = 'SQLDEV'
db = 'MEJAMES'
#Create the connection
conn = pyodbc.connect('DRIVER={SQL Server};server =' + server + ';DATABASE = ' + db + ';Trusted_Connection=yes;')
# query db
sql = """
select top 10 PolicyNumber, QuoteID, ProducerName from tblQuotes
"""
df = pd.read_sql(sql,conn)
df
を与えるしかし、私は同じですが、パラメータを使用せずに操作を行う場合、それは正常に動作します:
import pandas as pd
import pyodbc
#parameters:
#server = 'SQLDEV'
#db = 'MEJAMES'
#Create the connection
conn = pyodbc.connect("DRIVER={SQL Server};server=SQLDEV;database=MEJAMES;Trusted_Connection=yes;")
# query db
sql = """
select top 10 PolicyNumber, QuoteID, ProducerName from tblQuotes
"""
df = pd.read_sql(sql,conn)
df
'server;キーワードのあとのスペースを削除するようにしてください。' ...; server = '+ server + ... 'の代わりに' ...; server =' + server + ... ' –
それは働いた。私はpythonがすっごく厄介な言語だと信じていません。私はそれについても考えないだろう。あなたはそれに答えることができます、私は正しいと受け入れるでしょう。ご助力ありがとうございます。 – Oleg
これはPythonではなく、この場合は厄介なSQLServerです。 – thebjorn