簡體   English   中英

Python刪除帶有python變量的mysql / mariadb不起作用

[英]Python DELETE mysql/mariadb with a python variable not working

我正在嘗試按照以下文章中的描述進行操作,我已使用基本的python程序(不使用flask)簡化了此操作,只是為了證明我的概念,但是我遇到了一些問題。

flask_mysqldb刪除FROM變量表

我的代碼如下:

import mysql.connector as mariadb

new = 'ksk'
mariadb_connection = mariadb.connect(user='root', password='mypwd', 
database='customers')
cursor = mariadb_connection.cursor()

cursor.execute("DELETE FROM customer_info WHERE name = %s" % (new))

mariadb_connection.commit()
print('its gone')

這引發了一個錯誤,說我的桌子上,

"unknown column 'ksk' in where clause" 

這不是真的,我可以看到名稱為ksk的行。

為了證明這一點,如果我將delete語句更改為:

cursor.execute("DELETE FROM customer_info WHERE name = 'ksk'

行ksk被成功刪除。 我要去哪里錯了?

https://pynative.com/python-mysql-execute-parameterized-query-using-prepared-statement/-

然后,我們將這兩個列的值按順序添加到輸入元組中,並傳遞了SQL更新查詢和輸入元組t0 cursor.execute()函數,請記住,元組按占位符的順序包含用戶數據。

CURSOR的execute()方法采用一個可選的第二個參數 ,該參數包含一個數據值列表。 列表中的每個條目都必須為元組格式,才能與語句中的參數標記關聯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM