python自动生成sql语句的脚本
描述:
工作中在数据库中创建表时,当字段很多时,比较麻烦,开发一个工具,可在excel中写好字段英文名和中文名,然后通过py生成脚本或直接在库中生成表
脚本:
importtkinter
fromtkinterimport*
importtkinter.messagebox
fromtkinterimportscrolledtext
importxlrd
importpymysql
importos
#从excel中获取字段项,组合建表语句
defget_create_sql(dir_path,file_name):
try:
#打开xls文件
#excel_path="%s%s"%(dir_path,file_name)
#print("excel_path:",excel_path)
wb=xlrd.open_workbook(filename=dir_path)
#打开第一sheet
ws=wb.sheets()[0]
#获取行列数量
nrows=ws.nrows
#ncols=ws.ncols
#获取sheet1的名称
table_name=ws.name
#print("nrows:",nrows)
#print("ncols:",ncols)
#print("sheet1_name:",table_name)
#xlrd中行列是从0开始的
foriinrange(nrows):
ifi==0:#字段英文,格式是列表
row0_data=ws.row_values(0)
#print(row0_data)
ifi==1:#字段中文,格式是列表
row1_data=ws.row_values(1)
#print(row1_data)
#将含有-字符的替换
header0=[str(i).replace("-","_").replace("-","_").replace("(","_").replace(")","")foriinrow0_data]
#print("header0:",header0)
header1=[str(i).replace("-","_").replace("-","_").replace("(","_").replace(")","")foriinrow1_data]
#print("header1:",header1)
#获取表名
table_commet=file_name.split(".")[0]
#print("table_name:",table_name)
create_sql="CREATETABLE`%s`(\n"%table_name
#print("create_sql:",create_sql)
header0_len=len(header0)
#print("header0_len:",header0_len)
foriinrange(header0_len):
#print("i:",i,"value:",header0[i])
ifi
打包生成工具:
在资源栏
excel说明:
第一行,表字段英文名称
第二行,表字段中文名称
第三行,表数据,可不写
到此这篇关于python自动生成sql语句的脚本的文章就介绍到这了,更多相关python自动生成sql语句内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。