b114514n 2021-07-20 18:27 采纳率: 0%
浏览 23

为什么我的python文件会这样?

这次的报错信息是:
Traceback (most recent call last):
File "nb.py", line 47, in
cursor.execute(sql, (istr1,istr2))
sqlite3.OperationalError: near ",": syntax error

放代码:

# coding=utf-8
import sqlite3 as s

gnlb=['1','2','3','4','5']
istr1=''
istr2=''

while True:
    gn=input('功能:')
    if gn in gnlb:
        break
    print('没有这个功能,请重新输入。')

try:
    con=s.connect('hey.db')
    cursor=con.cursor()
    if gn=='1':
        sql = 'SELECT id_1, id_2 FROM Hello_world'
        cursor.execute(sql)
        result_set=cursor.fetchall()
        for row in result_set:
            print('ID1:{0},ID2:{1}'.format(row[0],row[1]))
    elif gn=='2':
        istr1=input()
        istr2=input()
        sql='INSERT INTO Hello_world (id_1, id_2) VALUES (?, ?)'
        cursor.execute(sql, (istr1, istr2))
        con.commit()
        print('成功')
    elif gn=='3':
        istr1=input()
        sql='SELECT id_1, id_2 FROM Hello_world WHERE id_1 = ?'
        cursor.execute(sql, (istr1,))
        result_set = cursor.fetchall()
        for row in result_set:
            print('ID1:{0},ID2:{1}'.format(row[0],row[1]))
    elif gn=='4':
        istr1=input()
        sql = 'DELETE FROM Hello_world WHERE id_1 = ?'
        cursor.execute(sql, (istr1,))
        con.commit()
        print('成功')
    elif gn=='5':
        istr1=input()
        istr2=input()
        n_istr1=input()
        n_istr2=input()
        sql = 'UPDATE Hello_world SET id_1=?, id_2=? WHERE id_1=?, id_2=?'
        cursor.execute(sql, (n_istr1,n_istr2,istr1,istr2))
        con.commit()
except s.Error as e:
    print('报错:{}'.format(e))
    if not gn=='1':
        con.rollback()
except:
    print('失败')
finally:
    if cursor:
        cursor.close()
    if con:
        con.close()

求解!

  • 写回答

2条回答 默认 最新

  • 碧池阿蒂拉 2021-07-20 19:31
    关注

    为什么你的报错信息和代码对不上

    img

    但你贴的代码里第47行不是cursor.execute(sql, (istr1,istr2))

    评论

报告相同问题?

问题事件

  • 创建了问题 7月20日

悬赏问题

  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题