将查询结果分配给变量,并在python脚本中使用它
我想将SQL查询中的datadir路径分配给变量并使用它: 我的尝试:将查询结果分配给变量,并在python脚本中使用它,python,mysql,sql,python-3.x,Python,Mysql,Sql,Python 3.x,我想将SQL查询中的datadir路径分配给变量并使用它: 我的尝试: db = MySQLdb.connect(hostaddress,user,password,db_name) cursor = db.cursor() cursor.execute("SELECT @@datadir") getsql = cursor.fetchall os.rename(getsql + database, '/tmp/backup/DATABASES/' + d
db = MySQLdb.connect(hostaddress,user,password,db_name)
cursor = db.cursor()
cursor.execute("SELECT @@datadir")
getsql = cursor.fetchall
os.rename(getsql + database, '/tmp/backup/DATABASES/' + database)
db.close()
except Exception as err:
logging.error(str(err))
执行后出错
错误:mysql:不支持+:“method”和“str”的操作数类型
哪里有错误?请帮忙。我不理解我的错误。fetchall是一个方法,所以带有
()
的getsql=cursor.fetchall()
可能会修复直接错误以调用实际方法。但是它将返回一个元组(可能在一个列表中)。在getsql+数据库中,什么是数据库?“database”是一个函数参数,用于删除databasecursor.fetchall(),是的,我忘了它。但它没有帮助,所以它返回了什么?就像我说的,里面有一个元组的列表?您无法将其传递到操作系统。重命名
,因此您需要为其编制索引以获取所需信息。