我在使用MySql
函数的烧瓶中运行concat
查询,它始终返回1.
cur.execute("INSERT INTO jobs( job_id, job_name, company, who_created)
VALUES(%s,%s, %s,%s)",(job_id,job_name, company,
[cur.execute("select concat(first_name , ' ' , last_name)
from employees where username = %s", [username] ) ] ) )
who_created
始终返回1
。
当我在MySQLWorkbench上运行查询时,它工作正常并返回first name + last name
。
问题不在于concat函数,因为即使我在没有concat的情况下运行它,我得到" str对象也不可调用"错误
感谢。
答案 0 :(得分:0)
cur.execute
将返回找到的行数。要获取返回的数据,您需要在执行后使用另一个调用:
cur.execute("select concat(first_name , ' ' , last_name) from employees where username = %s", [username] )
name_rs = cur.fetchall()
cur.execute("INSERT INTO jobs( job_id, job_name, company, who_created) VALUES(%s,%s,%s,%s)",(job_id, job_name, company, name_rs[0][0] ) )