def sure1():
a = varID.get()
b = varSum.get()
r1 = r'^([1-9]\d{5}[12]\d{3}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])\d{3}[0-9xX])$'
if re.match(r1,a):
result = askquestion('提示', '请确认充值信息!')
if (result):
conn2 = sqlite3.connect('users.sqlite')
c2 = conn2.cursor()
sql = "SELECT user_situation where user_id = %s" % a
c2.execute(sql)
c = c2.fetchall(1).row['user_balance']
b = b+c
c2.execute("UPDATE user_situation SET user_balance = ? where user_id = ?",(b,a))
conn2.commit()
conn2.close()
window_3.close()
c2.execute(sql)报出no such column: user_situation问题
我想知道sql的正确用法,这里的想法是用a选中同行中的c列项,再用获取的b,使b=b+c,最后附在c的位置上,所以想知道后续代码有没有问题
sql的语法是select 列名 from 表名 where 链接条件
比如我想在tablea里选择和tableb同样的列就是select id from tablea where tablea.id=tableb.id
你少了表名
sql = "SELECT user_situation from 表名 where user_id = %s" % a