Python:odbc数据加载

2024-09-28 17:21:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用pyodbc导入sql大数据。但是没有错误,没有保存的文件和消息(数据有300000行和600列)

如何在python-odbc中加载大数据?你知道吗

这是我的密码:

import pyodbc
import pandas as pd

H2=pyodbc.connect('DRIVER={SQL Server}; SERVER={192.168.x.x};DATABASE={H2};UID=hoho;PWD=haha')
cursor=H2.cursor()
cursor.execute("Select  * From [dbo].[HIST_UTDATA001_201506]")
fieldnames1=[f[0] for f in cursor.description]
result=[]
result=cursor.fetchmany(1000)
b1=result
while b1:

      b1=cursor.fetchmany(1000)
      if not b1:
            break
      result.extend(b1)


df = pd.DataFrame(result,columns=[fieldnames1])
df.to_csv('TEST1.csv')

Tags: 文件csv数据importdfsql错误h2
1条回答
网友
1楼 · 发布于 2024-09-28 17:21:05

很可能是内存不足。只有一个整数(8字节)的列将需要(大约)16个额外的字节用于Python对象和指向它们的指针。每列24字节。把这些数字加起来,至少需要24*600*300000=4320000000字节。您将需要更多的字符串。你知道吗

你可以试试turbodbc。它比pyodbc更快,并且提供了内置的NumPy支持,以避免Python对象用于数字。这样可以减少内存消耗。你知道吗

相关问题 更多 >