-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi.
This is my code for Oracle Connection with python and cx_Oracle. How can improvement time of response?. #========================================================== #Este metodo crea una conexion a oracle def creaConexion(self,v_user, v_passwd, v_schema): rowsSchema = v_schema.split(",") v_server = str(rowsSchema[0]) v_port = int(rowsSchema[1]) v_sid = str(rowsSchema[2]) dsn = cx_Oracle.makedsn(v_server, v_port, v_sid) try: connection = cx_Oracle.connect(v_user, v_passwd,dsn) return connection except cx_Oracle.DatabaseError, exc: error, = exc.args print >> sys.stderr, XP_ERROR+"Oracle-Error-Code:", error.code print >> sys.stderr, XP_ERROR+"Oracle-Error-Message:", error.message sys.exit(1) #metodo que ejecuta un query en oracle def ejecutaQuery(self, query, conn): cursor = conn.cursor() cursor.arraysize = 10000 try: cursor.parse(query) cursor.execute(query) cursorReturn = cursor.fetchall() return cursorReturn except cx_Oracle.DatabaseError, exc: error, = exc.args print >> sys.stderr, XP_ERROR+"Oracle-Error-Code:", error.code print >> sys.stderr, XP_ERROR+"Oracle-Error-Message:", error.message print query sys.exit(1) #========================================================== The time for an comparation of 2 DBs are many. Python: 1 - 2 mins by rows. Java 0.02 - 0.10 secs by rows. my code for comparation #============================================================ n = 1 iniciaconexionBSCS = OracleConnections() iniciaconexionATS = OracleConnections() #Realizamos la conexion a oracle. conn = iniciaconexionBSCS.creaConexion(usrBSCS, pasBSCS, 'BSCSP') conn2 = iniciaconexionATS.creaConexion(usrATS, passATS, 'ATSP') for rows in tuplaTotal: BODY_SQL_BSCS = TMPLT_BSCS % (rows.telefono) BODY_SQL_ATS = TMPLT_ATS % (rows.telefono) error_co_id = '0' error_ciclo = '0' error_pt = '0' error_status = '0' error_activacion = '0' error_saldo = '0' #print BODY_SQL_BSCS #print BODY_SQL_ATS ejecBSCS = iniciaconexionBSCS.ejecutaQuery(BODY_SQL_BSCS, conn) ejecATS = iniciaconexionATS.ejecutaQuery(BODY_SQL_ATS, conn2) for rowsBSCS in ejecBSCS: for rowsATS in ejecATS: #Ejemplos de salida #BS (3404, 7956771, '5546037825', '10', 'a', 'CCT116') #AT ('7956771', '5546037825', '334010011470558', '10', 'a', 'CCT116', 'AC', 0, 335.35000000000002, 0) if ((str(rowsBSCS[2]) == str(rowsATS[1])) and ((int(rowsBSCS[1]) <> int(rowsATS[0])) or (str(rowsBSCS[3]) <> str(rowsATS[3])) or (str(rowsBSCS[4]) <> str(rowsATS[4])) or (str(rowsBSCS[5]) <> str(rowsATS[5])) or (str(rowsATS[6]) == 'CR') or (rowsATS[7] < 0) or (rowsATS[8] < 0) or (rowsATS[9] < 0))): print 'DN Con error: '+rows.telefono if (int(rowsBSCS[1]) <> int(rowsATS[0])): error_co_id = '1' elif (str(rowsBSCS[3]) <> str(rowsATS[3])): error_ciclo = '1' elif (str(rowsBSCS[4]) <> str(rowsATS[4])): error_status = '1' elif (str(rowsBSCS[5]) <> str(rowsATS[5])): error_pt = '1' elif (str(rowsATS[6]) == 'CR'): error_activacion = '1' elif ((rowsATS[7] < 0) or (rowsATS[8] < 0) or (rowsATS[9] < 0)): error_saldo = '1' DNIncorrecto = str(rowsATS[1])+"|"+str(rowsBSCS[1])+"|"+str(rowsATS[0])+"|"+str(rowsBSCS[3])+"|"+str(rowsATS[3])+"|"+str(rowsBSCS[4])+"|"+str(rowsATS[4])+"|"+str(rowsBSCS[5])+"|"+str(rowsATS[5])+"|"+str(rowsATS[6])+"|"+str(rowsATS[7])+"|"+str(rowsATS[8])+"|"+str(rowsATS[9])+"|"+error_co_id+"|"+error_ciclo+"|"+error_status+"|"+error_pt+"|"+error_activacion+"|"+error_saldo+"|"+error_co_id+error_ciclo+error_status+error_pt+error_activacion+error_saldo print str(n)+"--"+XP_LOG+DNIncorrecto #n = n + 1 else: DNCorrecto = str(rowsATS[1])+"|"+str(rowsBSCS[1])+"|"+str(rowsATS[0])+"|"+str(rowsBSCS[3])+"|"+str(rowsATS[3])+"|"+str(rowsBSCS[4])+"|"+str(rowsATS[4])+"|"+str(rowsBSCS[5])+"|"+str(rowsATS[5])+"|"+str(rowsATS[6])+"|"+str(rowsATS[7])+"|"+str(rowsATS[8])+"|"+str(rowsATS[9]) print str(n)+"--"+XP_LOG+DNCorrecto #n = n + 1 #print str(n), rows.telefono n = n + 1 iniciaconexionBSCS.cierraConexion(conn) iniciaconexionATS.cierraConexion(conn2) #============================================================ I need improvement the time of response of 1 - 2 minutes to 0.02 - 0.10 secs. How can this?. GREETINGS. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQIcBAEBAgAGBQJMB+tZAAoJEFWGNhWbCcUY5vIP/AlE7nTFzX+HkLPq3Lj6yj9s 6yFYRIlcJwX+QEa0PGPXDcJ/nJw5uqLNsKZW2v7R5zmeDmX7BSUx0nO57xju/sEB PnRBYrqXBKd1GvJU46SUJi2ahQx7y37ctzjU9l2sdZ/74JrSWiW1L3Ip4DJnlohR hgmS6PfTx4IvHb26Pn8Sxa5UGmL0OGVrW7b/U9BI+IAXjkXMnrmVQKbaInBIrE3m ZGCwsySTjfSKEhH9ybOVhk4CZHkeRY2wKNv4YZ98++sSkrCFMhdnoPM0fMAsAEN2 sgQhZ9ziNCtpiyGmtL/QVkxeQhwNwpnixrkXf96FfzeVLESwf2117m3RcTntLWKC ixvOOHV2gCF6YCf5UKucQEq8V/D1UgPliPU4pacBvq/5/Xq3zoJxOWxnHRZRiUtA /UgGnhn+7vHvhiYTXJtJrI95i6YyR7mud0ZuWcc7pYGZ6kJ1toIZIgqeLxvK33u0 OrQUOf0n6j+JWS9DiJRrIMhhRPr8IX5pjGg6GfqfcQBKUcJuJnLzev57GFTQHcCl S18lkASTykWV3SPdAc6mmAf2Pv/B2X8CFZk9Oc9kgnqYUVFyikCY4GRv7GCnMucQ 1yYoWT5nz/N9+6SeLkGGhS9nxWL/OJlepYR66shJR4J/1K1Qp5BERhOtLMX5f2kK L8MNhHxT1IictTauhp0D =wckT -----END PGP SIGNATURE----- _______________________________________________ python-win32 mailing list python-win32@python.org http://mail.python.org/mailman/listinfo/python-win32