Запрос вставки в БД не производит запись

193
04 августа 2018, 08:10

Есть MySQL на Amazon RDS.

Есть тестовая таблица из двух столбцов (ID - INT, Event - Text)

Подключился к ней, посылаю запрос вида:

SELECT * FROM Test WHERE ID=1

все работает на ура, ответ получаю.

Отсылаю запрос типа:

INSERT INTO Test VALUES (2, "Text")

все хорошо - получаю пустой ответ, но запись не производится. В чём проблема?

Написал на C# консольную программу для управления БД - там все работает, данные для входа те же.

import MySQLdb
db = MySQLdb.connect(host="host",    # your host, usually localhost
                     user="user",         # your username
                     passwd="pass",  # your password
                     db="db")        # name of the data base
# you must create a Cursor object. It will let
#  you execute all the queries you need
cur = db.cursor()
# Use all the SQL you like
sql = 'INSERT INTO Test VALUES (3,"Example")'
cur.execute(sql)
# print all the first cell of all the rows
for row in cur.fetchall():
    print (row)
db.close()
Answer 1

Первое, что бросается в глаза - cur.fetchall() "вытягивает" записи, возвращенные последним запросом. В вашем случае последний запрос - это INSERT, который не возвращает записей.

Кроме этого попробуйте добавить db.commit() после cur.execute(sql).

READ ALSO
Кастомные радио инпуты

Кастомные радио инпуты

у меня есть два обычных радио-инпута, которые должны иметь жирный текст при состоянии checked Вот пример – Пример на codepen Но в моем примере при...

156
Не выводятся значения атрибутов

Не выводятся значения атрибутов

Почему для тега select не выводится значение атрибута style? Все теги закрыты

179
Вызов функции при определенном select

Вызов функции при определенном select

Имеется следующий код: codepen

147
Добавить placeholder в input

Добавить placeholder в input

У меня есть пользовательский вводЯрлык находится на входе и после щелчка по метке выходит поверх ввода

142