项目印记

预测未来的最好办法,就是把它创造出来。--艾伦.凯(美)

【Flask】电子表格数据导入mysql数据库备忘

# coding:utf-8
import pymysql
import xlrd
import openpyxl
# 本程序将xls数据上传到阿里云mysql数据库,需在阿里云数据库设置白名单。


conn = pymysql.connect(host='888', port=3306, user='888', passwd='888', db='888', charset='utf8', connect_timeout=1000)
    # 阿里云mysql服务器
cur = conn.cursor()
sql="""create table if not exists address (id int(10) primary key auto_increment,name varchar(40) not null,address varchar(100) not null,insertDate timestamp not null default current_timestamp COMMENT '插入时间')"""
cur.execute(sql)            # 创建表
cur.execute("show tables")
book = xlrd.open_workbook('example2.xls')
sheet = book.sheet_by_name('Sheet1')
    # »和xls格式配套
rows = sheet.nrows
print(rows)
    #  
for r in range(0, rows):
    r_values = sheet.row_values(r)
    print(r_values)
    sql = "insert into address(name,address) values(%s,%s);"
        # 学生信息表
    data = cur.execute(sql,(r_values[0],r_values[1]))
    # 
conn.commit()
cur.close()
conn.close()

1、使用MAC OS Finder 中快速定位指定路径

快捷键:Shift + Command + G

2、由于mac中安装了多个版本的python,所以在安装openpyxl和xlrd模块后还无法找到该模块。使用which查找python位置,使用python --version查找版本号,最后找到解决方案。

/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages中的两个插件文件夹复制到/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages下,在sublime text下运行就可以!

3、表格必须保存为xls格式。

4、insertDate timestamp not null default current_timestamp COMMENT '插入时间'不需要插入数值。

问 AI(只依据本文回答)
输入你的问题,AI 只根据当前段落和全篇上下文回答。
本文批注(0)