Как удалить запись из таблицы?

У меня проблема с удалением записи из базы данных sqlite3:

conn = sqlite3.connect('databaza.db') c = conn.cursor() data3 = str(input('Please enter name: ')) mydata = c.execute('DELETE FROM Zoznam WHERE Name=?', (data3,)) conn.commit() c.close 

Все хорошо, но удаление не работает! У кого-нибудь есть идея?

5 Solutions collect form web for “Как удалить запись из таблицы?”

Правильный синтаксис для параметризованного запроса:

 mydata = c.execute("DELETE FROM Zoznam WHERE Name=?", (data3,)) 

Убедитесь, что параметр использует запятую, чтобы сделать его кортежем python.

Это поможет предотвратить внедрение SQL Injection, которое возможно при передаче в форматированной строке. Подробнее о SQL-инъекции здесь

Похожие сообщения здесь .

Советую сначала создать строку для запроса, а затем выполнить ее. например:

 query = "delete from zoznam where name = '%s' " % data3 c.execute(query) conn.commit() 

Попробуйте:

 mydata = c.execute('DELETE FROM Zoznam WHERE Name = (?)', (data3)) 

Без "," и "?" между '()'

Проверьте права доступа к файлу.

В стороне, я предпочитаю обозначенный метод:

 mydata = c.execute("DELETE FROM Zoznam WHERE Name='%s'" % data3) 

Спасибо всем, кто пытался помочь. Правильный код:

 conn = sqlite3.connect('databaza.db') c = conn.cursor() conn.text_factory = str data3 = str(input('Please enter name: ')) query = "DELETE FROM Zoznam WHERE Name = '%s';" % data3.strip() print(query) mydata = c.execute(query) 
  • текстовый файл в базу данных sqlite3 с python
  • Python sqlite3.OperationalError: нет такой таблицы:
  • python 3.2 UnicodeEncodeError: кодек 'charmap' не может кодировать символ '\ u2013' в позиции 9629: карты символов для <undefined>
  • Python вставляет массив numpy в базу данных sqlite3
  • Получение ошибки db_type () при использовании django-facebook connect для DjangoApp
  • Создание модуля python 2.6 w / sqlite3, если sqlite установлен в нестандартном местоположении
  • Сохранение кортежей как типов данных blob в Sqlite3 в Python
  • Как разделить одно соединение SQLite в многопоточном приложении Python
  • Как реализовать предложение о наличии в sqlite django ORM
  • Преобразование полей даты и времени в хронологическом файле Chrome (sqlite) в читаемый формат
  • Как получить имя таблицы для выполненного запроса? (python / sqlite)
  • Python - лучший язык программирования в мире.