【发布时间】:2016-12-12 05:04:41
【问题描述】:
conn = pymysql.connect(host = '127.0.0.1', unix_socket = '/var/run/mysqld/mysqld.sock',
user = 'root', passwd='', db = 'mysql')
cur = conn.cursor()
cur.execute("USE info")
def store(name, review_url, city, state, zip, phone_number, rooms, email):
# prints this
print('trying to commit')
sql = "INSERT INTO 'Hotels' ('name', 'review_url', 'city', 'state', 'zip', 'phone_number', 'rooms', 'email') VALUES" \
"(%s, %s, %s, %s, %s, %s, %s, %s)"
cur.execute(sql, (name, review_url, city, state, zip, phone_number, rooms, email))
cur.connection.commit()
# doesnt print this
print('tried to commit')
我没有收到任何错误,数据库名和表名以及所有列名都是正确的。
它打印出“尝试提交”,但没有打印出“尝试提交”
有人知道为什么会这样吗?
【问题讨论】:
-
不就是conn.commit()吗?
-
@Dan-Dev 我认为任何一种方式都可行,我将其更改为 conn.commit() 并收到相同的行为
-
想给MCVE。我的服务器给出了这个错误:
(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''Hotels' ('name', 'review_url', 'city', 'state', [ … ] at line 1")。这似乎是一个与报价相关的问题。