您的位置:首页 > 编程语言 > Python开发

python3 使用pymysql

2016-09-04 17:37 169 查看
#! /usr/bin/env python3
# coding = utf-8

import random
import pymysql

# 连接数据库函数
def connDB(data):
conn = pymysql.connect(host='localhost',user='root',passwd='#######',db='test',)  #数据库
cur = conn.cursor()   #游标
cur.execute('create database if not exists test;')   #执语句行
cur.execute('create table if not exists test1(id INT NOT NULL, num VARCHAR(40) );')
for i in range(len(data)):
cur.execute('insert into test1 (id,num) values("{0}","{1}");'.format(i,data[i]))   #{0} {1} 要和sql语句区分
cur.close()  #关游标
conn.commit()
conn.close()  #关数据库

# 产生激活码
def make_number(num,length):
lstr = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
a = []
cnt = 0
while cnt < num:
a_str = ''
for j in range(length):
a_str += random.choice(lstr)
if a_str not in a:
a.append(a_str)
cnt +=1
return a

if __name__ == "__main__":
nums = make_number(100,20)
print(nums)
connDB(nums)


错误处理:

pymysql.err.InternalError: (1054, "Unknown column 'K0F3hNCZUrXIA4wMEk6a' in 'field list'")

{0} {1} 要和sql语句区分,所以在该语句中用双引号标注,其他格式化字符串(d%,s%等也应用引号区分)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: