import fdb import os import shutil import glob dbname = 'D:\\Project\\2014\\testdb\\MAINDB.FDB' conn = fdb.connect(dbname, user='sysdba', password='masterkey') cursor = conn.cursor() dst = "D:\\1" def copyfiles(src): print "src = %s" % src print "dst = %s" % dst print "=======================" if os.path.exists(dst): for root, dirnames, filenames in os.walk(src): print filenames print "EXIT FROM COPY" else: print "FOLDER DO NOT EXIST" cursor.execute("select ROUTE_ID, FILE_NAME, FL_ARCHIVE FROM ROUTE where FL_ARCHIVE = %s;" % (10))#.fetchall() select_result = cursor.fetchall() for id, name, fl in select_result: name = os.path.dirname(name) #print name if copyfiles(name): cursor.execute("UPDATE ROUTE SET FL_ARCHIVE = %s WHERE ROUTE_ID=%s;" % (11, id)) print "value changed" else: cursor.execute("UPDATE ROUTE SET FL_ARCHIVE = %s WHERE ROUTE_ID=%s;" % (13, id)) print "value DO NOT changed"
Проблема в том, что не могу понять, почему каждый раз срабатывает условие “value DO NOT changed”.
Вроде бы для каждого успешного copyfiles(name): запускаем cursor.execute, однако он очевидно не срабатывает. Не могли бы подсказать в чем ошибка?
Да еще хотел спросить, в какой момент мне соединение закывать нужно?