#_*_coding:utf-8_*_
#author: cike
#date: 18-9-13
import pymysql.cursors
connection = pymysql.connect(host='localhost',
port = 3306,
user='root',
passwd='root',
db ='jsontest',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor,)
#这里设置表名
table_name = "test12"
#这里设置需要的字典数据
dict1 = {
"id": "971",
"payout_id": "10602",
"payin_id": "0",
"pay_nums": "500.00",
"pay_state": "0",
"pay_time": "1536829856",
"pay_no": "PAY2018091348534951",
"card_id": "664",
"trade_notes": "null",
"trans_type": "0",
"trans_img": "null",
"get_moneytime": "null",
"fee_nums": "100.00",
"out_card": "null"
}
#数据插入函数
def insert1(sql):
try:
with connection.cursor() as cursor:
cursor.execute(sql)
connection.commit()
print(u"创建表%s成功" %(table_name))
finally:
connection.close()
#根据元祖数据生成mysql语句
def make_sql(tuple2):
str1 = "CREATE TABLE `%s`" %(table_name)
str2 = "ENGINE=InnoDB DEFAULT CHARSET=utf8;"
str4=""
for i in tuple2:
str3 = "`"+i+"`"+" "+"varchar(255) DEFAULT NULL,"
str4 = str4+str3
str5 = "("+str4.rstrip(",")+")"
str6 = str1+" "+str5+str2
return str6
#把字典数据转化为元祖数据
def tuple1(dict1):
list1 = []
print(u"总字段数:"+str(len(dict1)))
for i in dict1.keys():
list1.append(i)
m = tuple(list1)
return m
def main():
tuple2 = tuple1(dict1)
sql_str = make_sql(tuple2)
insert1(sql_str)
if __name__ == '__main__':
main()