1
0
Fork 0
mirror of https://github.com/yweber/lodel2.git synced 2026-10-27 06:41:33 +01:00

Prise en charge de la clause bindparam dans sqlquerybuilder.py

To-Do: tester
This commit is contained in:
Driky 2015-06-03 16:48:47 +02:00
commit 49994da98f

View file

@ -54,16 +54,30 @@ class SqlQueryBuilder():
""" """
self.proxy = self.proxy.values(arg) self.proxy = self.proxy.values(arg)
def Execute(self): def Execute(self, bindedparam):
""" """
Execute the sql query constructed in the proxy and return the result. Execute the sql query constructed in the proxy and return the result.
If no query then return False. If no query then return False.
@return: query result on success else False @return: query result on success else False
""" """
if(self.proxy.__str__().split() == 'SELECT'): if(self.proxy.__str__().split() == 'SELECT'):
return self.sqlwrapper.rconn.execute(self.proxy) if('bindparam' in self.proxy.__str__()):
#on test separement la présence de la clause bindparam et le type de l'argument correspondant
#car si la clause est présente mais que l'argument est defectueux on doit renvoyer False et non pas executer la requete
if(type(bindedparam) is list and type(bindedparam[0]) is dict):
return self.sqlwrapper.rconn.execute(self.proxy, bindedparam)
else:
return False
else:
return self.sqlwrapper.rconn.execute(self.proxy)
elif(self.proxy is not None): elif(self.proxy is not None):
return self.sqlwrapper.wconn.execute(self.proxy) if('bindparam' in self.proxy.__str__()):
if(type(bindedparam) is list and type(bindedparam[0]) is dict):
return self.sqlwrapper.wconn.execute(self.proxy, bindedparam)
else:
return False
else:
return self.sqlwrapper.wconn.execute(self.proxy)
else: else:
return False return False