python辞書から万能SQL文(INSERT)を生成

4531 ワード

def connect_mysql(item, table_name):
	'''
	item:      ,key             
	'''
    conn = pymysql.connect(host='localhost', port=3306, database='news', user='root', password='password',
                           charset='utf8')
    #   Cursor  
    cursor = conn.cursor()
    ls = [(k, v) for k, v in item.items() if v is not None]
    print(' %s (' % table_name + ','.join([i[0] for i in ls]) + ')')
    sql = 'INSERT INTO %s (' % table_name + ','.join([i[0] for i in ls]) + ') VALUES (' + ','.join(
        repr(i[1]) for i in ls) + ');'

    print(sql)