Извлечение из базы данных с помощью Python

голоса
1

Я написал небольшой скрипт на Python, которые могли бы помочь мне, чтобы извлечь данные из базы данных. Вот мой сценарий:

#!/usr/bin/python3

import pandas as pd
from sqlalchemy import create_engine

#connect to server
mytab = create_engine('mssql+pyodbc://test:test1@mypass')

#sql query that retrieves my table
df = pd.read_sql('select * from FO_INV', mytab)

#query result to excel file 
df.to_csv('inventory.csv', index=False, sep=',', encoding='utf-8')

Все работает отлично, если я выбираю, чтобы выбрать топ 100 строк, например. Но для всей таблицы, это займет навсегда !!! Есть ли у вас какие-либо идеи или рекомендации, пожалуйста? Заранее спасибо :)

Задан 27/11/2018 в 15:01
источник пользователем
На других языках...                            


1 ответов

голоса
0

Я бы предложил использовать pyodbcвместо SQLALCHEMY.

Что-то вроде этого:

import pyodbc
mytab = pyodbc.connect('DRIVER={SQL SERVER};SERVER=.\;DATABASE=myDB;UID=user;PWD=pwd')

Проверьте тайминги с этим. Это должно быть быстрее.

Ответил 27/11/2018 в 15:10
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more