【发布时间】:2022-07-19 01:44:36
【问题描述】:
我试图将 pandas 插入带有 chunksize 的 sql server 表中,但我收到了这个错误,如果代码不好,我很抱歉,我对 sqlalchemy 不好
错误
Traceback(最近一次调用最后一次): 文件“C:\Users\neyma\PycharmProjects\pythonProject23\main.py”,第 95 行,在 对于 conn.fetchall() 中的行: AttributeError: 'Connection' 对象没有属性 'fetchall'
这是我的代码
connection_url = URL.create(
"mssql+pyodbc",
query={"odbc_connect": connection_string}
)
engine = create_engine(connection_url)
engine = create_engine(connection_url)
conn = engine.connect().execution_options(
stream_results=True)
with open("ss.xml") as fp:
soup = BeautifulSoup(fp, 'xml')
data = []
'DSName': e.text if (e := Event.select_one(('Data[Name="DSName"]'))) else None,
'DSType': e.text if (e := Event.select_one(('Data[Name="DSType"]'))) else None,
'ObjectDN': e.text if (e := Event.select_one(('Data[Name="ObjectDN"]'))) else None,
'ObjectGUID': e.text if (e := Event.select_one(('Data[Name="ObjectGUID"]'))) else None,
'ObjectClass': e.text if (e := Event.select_one(('Data[Name="ObjectClass"]'))) else None,
'AttributeLDAPDisplayName': e.text if (e := Event.select_one(('Data[Name="AttributeLDAPDisplayName"]'))) else None,
'AttributeSyntaxOID': e.text if (e := Event.select_one(('Data[Name="AttributeSyntaxOID"]'))) else None,
'AttributeValue': e.text if (e := Event.select_one(('Data[Name="AttributeValue"]'))) else None,
'OperationType': e.text if (e := Event.select_one(('Data[Name="OperationType"]'))) else None,
})
df = pd.DataFrame(data);
engine.execute('''
CREATE TABLE try(
DSName nvarchar(max),
DSType nvarchar(max),
ObjectDN nvarchar(max),
ObjectGUID nvarchar (max),
AttributeLDAPDisplayName nvarchar(max),
AttributeSyntaxOID nvarchar(max),
AttributeValue nvarchar(max),
OperationType nvarchar(max),
)
''')
df.to_sql('try', conn, if_exists='replace', index = False,chunksize=100)
engine.execute('''
SELECT * FROM test
''')
for row in conn.fetchall():
print (row)
【问题讨论】:
标签: python sql-server pandas sqlalchemy