通过python往mysql批量写入数据
目录
通过python往mysql批量写入数据
if __name__ == '__main__':
#获取需要插入的数目
total_num = sys.argv[1]
print(total_num)
# 连接database
sdpc_host = "127.0.0.1"
mysql_user = "root"
mysql_password = "12345678"
mysql_port = 3306
conn = pymysql.connect(host=sdpc_host, port=mysql_port, user=mysql_user, password=mysql_password,
database="sdpdatabase",
charset="utf8")
# 使用cursor()方法创建一个游标对象
cursor = conn.cursor()
# 插入的数据
data=[]
# sql语句
sql = "INSERT INTO local_user (id,name,password,create_time) \
VALUES (%s,%s,%s,%s)"
i=1
while i<=int(total_num):
# 开始时间
start_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
# 创建数据的数组
data.append((i, "user"+str(i), "password"+str(i), start_time))
i +=1
#开始写入数据库
cursor.executemany(sql,data)
# 提交数据
conn.commit()
# 关闭光标对象
cursor.close()
# 关闭数据库连接
conn.close()
执行方法也简单,window或linux命令行输入
python 上面这个文件 插入数目
补充:
如果在linux上,linux只有python环境,也可以把PyMySQL-1.0.2.tar.gz库和python脚本放在/home/admin下,写一个简单shell(createData.sh)如下
#! /bin/bash
function install_pi(){
#安装包
pi_1="/home/admin/PyMySQL-1.0.2.tar.gz"
tar -zxvf $pi_1
source cd /home/admin/PyMySQL-1.0.2
python3 setup.py install
#返回上一层目录
source cd ../
}
function create_user(){
# python3 create_user.py $1 $2 $3
python3 create_user.py $1
}
function main(){
install_pi
# create_user $1 $2 $3
create_user $1
}
# main $1 $2 $3
main $1
在/home/admin目录下,执行 ./createData.sh 100
创建100个数据