excel中需要包含:第一列为字段名称,第二列为字段类型,第三列为字段长度,第四列为是否为主键利用Y/N区分
import xlrd
import os
def convert_type(data_type):
"""Normalize MySQL `data_type`"""
if 'CHAR' == data_type:
return 'varchar'
elif 'CLNT' == data_type:
return 'varchar'
elif 'NUMC' == data_type:
return 'numeric'
elif 'DATS' == data_type:
return 'timestamp'
elif 'QUAN' == data_type:
return 'varchar'
elif 'CUKY' == data_type:
return 'varchar'
elif 'CURR' == data_type:
return 'varchar'
elif 'DEC' == data_type:
return 'varchar'
elif 'INT4' == data_type:
return 'varchar'
elif 'TIMS' == data_type:
return 'varchar'
else:
return data_type
# 在postgresql中创建表
def postgres_create(fields):
stg_table_name = 'dw_stg.stg_cus_dim_' + fields[0]['table_name']
edw_table_name = 'dw_edw.edw_cus_dim_' + fields[0]['table_name']
columns = []
primary_key = []
for field in fields: