前言
作为一个超级菜鸟,在遇到这个问题时查阅的资料都让我感到n脸懵逼啊,不知道有没有童鞋有跟我一样的困惑,我知道我的问题应该跟大佬们遇到的不太一样,所以我用一个超简单的办法就搞定了(应该只适用小部分情况吧)
一、遇到问题的过程
一个函数如下用于向数据库添加数据,数据内容不重要,代码如下:
def data_create(file):
conn = sqlite3.connect(file)
cur = conn.cursor()
k = 1
for i in range(k):
s = (random.randint(0, 1),random.randint(0, 1),random.randint(0, 1),
random.randint(0, 1),random.randint(0, 1),random.randint(0, 1),
random.randint(0, 1),random.randint(0, 1))
cur.execute("insert into seats(occupation) values('%s,%s,%s,%s,%s,%s,%s,%s')"%s)
conn.commit()
seat = cur.fetchall()
cur.close()
conn.close()
return seat
输出结果正常
在这里插入图片显示效果
然后我继续运行一次
还是可以正常运行
因为尝试了十几次我发现k=1运行都没有问题,此时我决定让k = 100
然后我发现无论让k=多少都可以运行且不会报错,此时我拥有了好多数据
然后我看第539条数据0太多了不太爽
直接在DB Browser内修改了一下
很顺畅
然后我继续用自动添加数据,k值没有改变
运行发现控制台中等待的时间变长了,而且这次没有成功
我本以为是k值过大,后来发现k = 1还是会出现一模一样的错误,由此陷入了疯狂查找解决方案,结果面对堆栈…一头雾水
(真没学过
二、解决方案
1.关闭DB Browser
这是我在查找了一堆又一堆我看不懂的方法后尝试的无奈之举
结果真的可以…太离谱了
2.查到的资料
总结
感觉遇到了很离谱的事情,将其作为我在csdn第一次的学习记录,希望不小心看到此篇的大佬能够指点迷津!