Python循环插入数据库失败是何原因,python何原因,def insert_i
Python循环插入数据库失败是何原因,python何原因,def insert_i
def insert_into_bet(data): len_team_data = int(len(data)/7) conn=mdb.connect(host='localhost',user='root',passwd='oracle',db='betdb',port=3306) cur = conn.cursor() sql = "insert into bet(id,lea,gmd,hos,gue,hos_sco,gue_sco) values(%s,%s,%s,%s,%s,%s,%s)" for l in range(len_team_data): for item in data[7*l:7*l+1]: cur.executemany(sql,data[7*l:7*l+7]) l+=1 cur.close() conn.commit() conn.close()if __name__=='__main__':# download_live_urls() now = datetime.datetime.now() now_date = now.strftime('%Y-%m-%d') pages_path = '/root/bet/teamUrls/%s' % now_date for page in os.listdir(pages_path): page_path = '/root/bet/teamUrls/%s/%s' % (now_date,page) #问题出在这里!!! insert_into_bet(from_page_to_data(page_path))
我尝试取消main里面的for循环,然后执行insert_into_bet这个,是可以插入数据库的,但是一旦加入for循环以后,就无法插入数据库了,不知道什么原因,求指点~
forexecutemany
仔细看executemany的用法
def insert_into_bet(data):len_team_data = int(len(data)/7)conn=mdb.connect(host='localhost',user='root',passwd='oracle',db='betdb',port=3306)cur = conn.cursor()sql = "insert into bet(id,lea,gmd,hos,gue,hos_sco,gue_sco) values(%s,%s,%s,%s,%s,%s,%s)"for l in range(len_team_data): for item in data[7*l:7*l+1]: cur.executemany(sql,data[7*l:7*l+7]) l+=1cur.close()conn.commit()conn.close()
顺序颠倒了~~
cur.close()
conn.commit()
建议查看日志有没有报错,mysql配置打开global_log,看看sql执行情况
编橙之家文章,
相关内容
- Django信息时实监控推送有什么好思路,django思路,djang
- python如何远程查看阿里云服务器控制台输出内容,pyt
- 想统计列表的指定区间python中用什么方法?,列表指定
- 最适合Python使用的有限状态机库是什么,适合python状态
- Python源码问题算负数平方根无结果输出何解,python负数
- python vim编辑器什么配色方案好,pythonvim配色方案,如果
- python爱好者学习互联网信息安全应该学习哪些知识,
- 求python添加emoji表情字符串进mysql数据库方法,pythonem
- 采集工作用Python语言更适合还是其它语言好,python其它
- mysq字符串同字节类型数据之间要用什么方法完成转换,
评论关闭