2017-01-31 1 views
1

je essaie d'exécuter ce script Python:paramètres qui passe cx_Oracle erreur ORA-01008

import pandas as pd 
import numpy as np 
import os 
import cx_Oracle 
import csv 

con = cx_Oracle.connect('CIRCU3/[email protected]:1521/korcl') 

params = {'year': str(2016)} 
df = pd.read_sql_query(script_SQL, con, params) 

où le script_SQL est:

SELECT 
kwhIT AS kwhIT, 
kwhCLT AS kwhCLT, 
TEMPEXT AS T 
FROM T_MEASURES_TE 
WHERE 
ID_SITE = 21 
AND TO_CHAR(TIMESTAMP, 'YYYY') = :year 

et renvoie une erreur ORA-01008: Tous variables liées.

Je n'arrive pas à déterminer quel est le problème. Merci de votre aide.

Répondre

2

Les paramètres ne sont pas transmis correctement à pandas.read_sql_query(). Vous avez besoin du code suivant à la place:

df = pd.read_sql_query(script_SQL, con, params=params)