sql-server-2008 – 查询SQL服务器numpy的最佳方法

在之前的程序中,我正在读取csv文件中的数据,如下所示:

AllData = np.genfromtxt(open("PSECSkew.csv", "rb"),
                        delimiter=',',
                        dtype=[('CalibrationDate', datetime),('Expiry', datetime), ('B0', float), ('B1', float), ('B2', float), ('ATMAdjustment', float)],
                        converters={0: ConvertToDate, 1: ConvertToDate})

我现在正在写一个非常相似的程序,但这次我想得到一个与AllData非常相似的数据结构(除了浮点数这次都是csv字符串),而是来自SQL Server而不是csv文件.什么是最好的方法?

pyodbc看起来像涉及使用游标很多我不熟悉并且想避免.我只想运行查询并在上面的结构中获取数据(或者像C#中的DataTable).

最佳答案
这是一个基于您链接到的other question的最小示例:

import pyodbc
import numpy

conn = pyodbc.connect('DRIVER={SQL Server};SERVER=MyServer;Trusted_Connection=yes;')
cur = conn.cursor()
cur.execute('select object_id from sys.objects')
results = cur.fetchall()
results_as_list = [i[0] for i in results]
array = numpy.fromiter(results_as_list, dtype=numpy.int32)
print array

转载注明原文:sql-server-2008 – 查询SQL服务器numpy的最佳方法 - 代码日志