public upgrade py
This commit is contained in:

committed by
LINxiansheng

parent
056c5a28b4
commit
fe44cd94cf
47
tools/upgrade/my_utils.py
Executable file
47
tools/upgrade/my_utils.py
Executable file
@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import mysql.connector
|
||||
from mysql.connector import errorcode
|
||||
from my_error import MyError
|
||||
from actions import QueryCursor
|
||||
import logging
|
||||
|
||||
def results_to_str(desc, results):
|
||||
ret_str = ''
|
||||
max_width_list = []
|
||||
for col_desc in desc:
|
||||
max_width_list.append(len(str(col_desc[0])))
|
||||
col_count = len(max_width_list)
|
||||
for result in results:
|
||||
if col_count != len(result):
|
||||
raise MyError('column count is not equal, desc column count: {0}, data column count: {1}'.format(col_count, len(result)))
|
||||
for i in range(0, col_count):
|
||||
result_col_width = len(str(result[i]))
|
||||
if max_width_list[i] < result_col_width:
|
||||
max_width_list[i] = result_col_width
|
||||
# 打印列名
|
||||
for i in range(0, col_count):
|
||||
if i > 0:
|
||||
ret_str += ' ' # 空四格
|
||||
ret_str += str(desc[i][0])
|
||||
# 补足空白
|
||||
for j in range(0, max_width_list[i] - len(str(desc[i][0]))):
|
||||
ret_str += ' '
|
||||
# 打印数据
|
||||
for result in results:
|
||||
ret_str += '\n' # 先换行
|
||||
for i in range(0, col_count):
|
||||
if i > 0:
|
||||
ret_str += ' ' # 空四格
|
||||
ret_str += str(result[i])
|
||||
# 补足空白
|
||||
for j in range(0, max_width_list[i] - len(str(result[i]))):
|
||||
ret_str += ' '
|
||||
return ret_str
|
||||
|
||||
def query_and_dump_results(query_cur, sql):
|
||||
(desc, results) = query_cur.exec_query(sql)
|
||||
result_str = results_to_str(desc, results)
|
||||
logging.info('dump query results, sql: %s, results:\n%s', sql, result_str)
|
||||
|
Reference in New Issue
Block a user