Hello,
Je suis débutant en python et en train de faire une application qui utilise notamment la librairie pandas.
J'imagine que j'ai du coder de façon sale et que ma version portable plus est moins souple.
J'ai l'impression qu'il n'arrive pas a lui faire fermer la boucle CUR.
J'utilise 2 versions de python:
- Python 3.5.3 + pandas (mon code fonctionne)
- Portable Python 3.2.5.1 + pandas (mon code ne fonctionne pas)
il me renvoi l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 # -*- coding: cp1252 -*- import pandas as pd import os import pyodbc cnx = pyodbc.connect('DRIVER={SQL Server};SERVER=xxxx;') inputdir = 'xxxx\\Inputs' for script in os.listdir(inputdir): with open(inputdir+'\\' + script,'r') as inserts: for statement in inserts: with cnx.cursor() as cur: data = pd.read_sql(statement,cnx) data.to_csv(''+ script +'.csv', sep=',') print(data) #cur.execute(statement) #data = pd.read_sql(sql, cnx) cnx.close()
Pourriez-vous me dépanner s'y il vous plait ?Traceback (most recent call last):
File "xxxx.py", line 15, in <module>
with cnx.cursor() as cur:
AttributeError: __exit__
ps: dans la version 3.5 que je mette un cnx.close() ou pas il s'en fiche.
Merci d'avance.
Partager