数据库行和列选择问题 <sqlite3.行对象在0x000001DE5B746D50>得到这个奇怪的返回



hii当我尝试使用sqlite进行数据库管理项目时,我遇到了这个问题。代码是

import sqlite3
class DBConnect():
def __init__(self):
self.db=sqlite3.connect("Registrations.db")
self.db.row_factory=sqlite3.Row
self.db.execute("create table if not exists Ticket(ID integer Primary key autoincrement,name text,gender text,comment text)")
self.db.commit()
def Add(self,Name,gender,comment):
self.db.row_factory=sqlite3.Row
self.db.execute("insert into Ticket(name,gender,comment) values(?,?,?)",(Name,gender,comment))
self.db.commit()
return "DATA ADDED SUCCESFULLY"
def Show(self):
self.db.row_factory = sqlite3.Row
cursor=self.db.execute("select * from Ticket").fetchall()
print(type(cursor))
return cursor

我没有得到任何行数据,而是得到它存储的地址,如下<sqlite3.Row对象位于0x000001DE5B746D50>

我认为您试图打印行的内容,即Name Gender etc,但最终打印的是对象print(type(cursor))的类型<sqlite3.Row object at 0x000001DE5B746D50>

要打印行的内容,可以尝试print(cursor)

最新更新