我正在尝试在我的数据库中打印出一些命令,但现在它打印出意想不到的答案。我先告诉你我的代码。 x和y是我需要在我的数据库中搜索并获得一些命令的东西
x="create vlan"
y="global"
def readswitch(x,y):
conn = sqlite3.connect('server.db')
if conn:
cur = conn.cursor()
run= cur.execute("SELECT command FROM switch WHERE function =? or type = ? ORDER BY key ASC",(x,y))
read = cur.fetchall()
return run;
import database
print (database.readswitch(x,y))
但现在结果如下
C:\Python34\python.exe C:/Users/tommy/PycharmProjects/2015122/database.py
<sqlite3.Cursor object at 0x0000000002753CE0>
<sqlite3.Cursor object at 0x0000000002753DC0>
Process finished with exit code 0
之前我没有看到这个结果! 这是什么问题?
答案 0 :(得分:0)
您的readwitch函数似乎正在返回光标而不是获取的数据。 根本不需要运行对象
而不是
cur = conn.cursor()
run= cur.execute("SELECT command FROM switch WHERE function =? or type = ? ORDER BY key ASC",(x,y))
read = cur.fetchall()
return run;
你可能需要
cur = conn.cursor()
cur.execute("SELECT command FROM switch WHERE function =? or type = ? ORDER BY key ASC",(x,y))
read = cur.fetchall()
return read;