2201_76029190 2023-06-03 18:51 采纳率: 50%
浏览 11
已结题

pythonl连接数据库进行删除功能

请教,用pydboc连接数据库实现删除功能时出现的问题,数据库为sql server

这是后台代码

def VCD_info(request):
    db = pyodbc.connect('DRIVER={SQL Server};SERVER=127.0.0.1;DATABASE=VCD_info;UID=sa;PWD=15036838685a;Trusted_Connection=No')
    mycursor = db.cursor()
    mycursor.execute("select * from VCD")
    rows = mycursor.fetchall()
   
    data = {
        "VCD": rows
    }
    if request.method == "GET":
        return render(request, 'VCD_info.html', data)

    # 获取提交的数据
    if 'add' in request.POST:
        Vno_info = request.POST.get("Vno")
        Vname_info = request.POST.get("Vname")
        Actor_info = request.POST.get("Actor")
        Price_info = request.POST.get("Price")
        Vtype_info = request.POST.get("Vtype")
        amount_info = request.POST.get("amount")
        mycursor = db.cursor()
        mycursor.execute("insert into VCD values (?,?,?,?,?,?)",
                     (Vno_info,Vname_info,Actor_info,Price_info,Vtype_info,amount_info))
        db.commit()
        return HttpResponse("添加成功")
    elif 'del' in request.POST:
        Vno_2 = request.POST.get("Vno_2")
        mycursor = db.cursor()
        mycursor.execute("delect from VCD where Vno=?",(Vno_2))
        db.commit()
        return HttpResponse("删除成功")
    mycursor.close()
    db.close()

这是前端代码

<div class="modal-body">
                        <form method="post" >
                            {% csrf_token %}
                        <p>
                            VCD编号:<input type="text" name="Vno_2" placeholder="请输入VCD编号">
                        </p>
                    </div>


这是报错信息

Traceback (most recent call last):
  File "D:\python_path\Lib\site-packages\django\core\handlers\exception.py", line 34, in inner
    response = get_response(request)
               ^^^^^^^^^^^^^^^^^^^^^
  File "D:\python_path\Lib\site-packages\django\core\handlers\base.py", line 126, in _get_response
    response = self.process_exception_by_middleware(e, request)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\python_path\Lib\site-packages\django\core\handlers\base.py", line 124, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "D:\vscode\html文件\html学习\login\login\view.py", line 49, in VCD_info
    mycursor.execute("delect from VCD where Vno=?",(Vno_2))
pyodbc.ProgrammingError: ('42000', "[42000] [Microsoft][ODBC SQL Server Driver][SQL Server]关键字 'from' 附近有
语法错误。 (156) (SQLExecDirectW); [42000] [Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句。 (8180)")

  • 写回答

1条回答 默认 最新

  • Lemon2050 2023-06-03 19:20
    关注

    错误信息提示你查询语句有语法错误:
    我看了下,可能是你把delete 写成了delect

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月12日
  • 已采纳回答 6月4日
  • 创建了问题 6月3日

悬赏问题

  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 three.js添加后处理以后模型锯齿化严重