不多說,直接 上貨吧
#!/usr/bin/python # -*- coding:utf-8 -*- import os, sys import time import re import MySQLdb reload(sys) sys.setdefaultencoding("utf8") #源系統數據庫連接 SOURCE_URL = "jdbc:mysql://xx.xx.xx.42:3306/risk?useUnicode=true&characterEncoding=utf-8" print SOURCE_URL # 源系統用戶名 SOURCE_USER = "admin" print SOURCE_USER # 源系統密碼 SOURCE_PASSWD = "admin@666" print SOURCE_PASSWD # 源系統數據庫名稱 SOURCE_DBNAME = "risk" print SOURCE_DBNAME #獲取MYSQL連接 def openConn(hostStr, port, userStr, passwdStr, tableSchema): conn = MySQLdb.connect(host='%s'%(hostStr), user='%s'%(userStr), passwd='%s'%(passwdStr), db='%s'%(tableSchema), port=port, charset="utf8", use_unicode="True") return conn #獲取查詢結果 def getRs(conn, sql): try: cursor = conn.cursor(); cursor.execute(sql); rows = cursor.fetchall(); conn.commit(); return rows; except Exception as e: print (str(e)) pass; finally: try: cursor.close(); except: pass; #執行SQL def execSql( conn, sql): try: cursor = conn.cursor(); cnt = cursor.execute(sql); conn.commit(); return cnt except Exception as e: print (str(e)) pass; finally: try: cursor.close(); except: pass; return -1 # 連接數據庫: def excuteSql_select(sql): # 獲取源系統mysql連接 if "mysql" in SOURCE_URL: mysqlStr = SOURCE_URL.split(":") conn = openConn(mysqlStr[2].replace("//", ""), int(mysqlStr[3].split("/")[0]), SOURCE_USER, SOURCE_PASSWD,SOURCE_DBNAME) return getRs(conn, sql) else: print "未知類型數據庫" sys.exit(1) # 連接數據庫: def excuteSql(sql): # 獲取源系統mysql連接 if "mysql" in SOURCE_URL: mysqlStr = SOURCE_URL.split(":") conn = openConn(mysqlStr[2].replace("//", ""), int(mysqlStr[3].split("/")[0]), SOURCE_USER, SOURCE_PASSWD,SOURCE_DBNAME) return execSql(conn, sql) else: print "未知類型數據庫" sys.exit(1) # 查詢數據: result_select = excuteSql_select("select count(*) from LOANCARDINFO") print '查詢結果總條數:' + str(result_select[0][0]) # 執行操作: result = excuteSql("insert into test values(3)") print '插入數據成功:' + str(result)