原文链接:http://www.juzicode.com/archives/3986
错误提示:
下列代码第2次执行时,插入记录提示:IntegrityError: UNIQUE constraint failed: table_juzicode._id
#juzicode.com/vx:桔子code
import sqlite3
#检查表是否存在,存在返回True
def check_table_exsist(cursor,table_name):
sql = '''SELECT tbl_name FROM sqlite_master WHERE type = 'table' '''
cursor.execute(sql)
values = cursor.fetchall()
tables = []
for v in values:
tables.append(v[0])
print('数据库包含的表:',tables)
if table_name in tables:
return True
return False
#查询、显示
def query(cursor,table_name):
sql = ''' SELECT _id, name, price, weight from ''' + table_name
values = cursor.execute(sql)
for v in values:
print('----------------')
print('_id =',v[0])
print('name =',v[1])
print('price =',v[2])
print('weight=',v[3])
db_name = 'test2.db'
table_name = 'table_juzicode'

本文探讨了如何在Python中使用sqlite3模块时,避免因尝试插入已存在的主键(_id)而引发的IntegrityError。作者指出了主键自增设置的重要性,并给出了正确的插入记录方法,以确保数据一致性。
最低0.47元/天 解锁文章
1万+





