python中的SQLite内部联接:sqlite3.OperationalError:没有这样的列:
我对python中的SQLite有一个问题。由于该错误,以下代码似乎不起作用 sqlite3.ERROR:无此类列:公司 我试图从这两个表中收集数据,并使用tablate将它们显示给用户,但无法继续,我无法找出如何解决此问题。解决方案可能很简单,但由于我有限的编程知识,我不确定如何继续 代码如下:python中的SQLite内部联接:sqlite3.OperationalError:没有这样的列:,python,mysql,database,sqlite,Python,Mysql,Database,Sqlite,我对python中的SQLite有一个问题。由于该错误,以下代码似乎不起作用 sqlite3.ERROR:无此类列:公司 我试图从这两个表中收集数据,并使用tablate将它们显示给用户,但无法继续,我无法找出如何解决此问题。解决方案可能很简单,但由于我有限的编程知识,我不确定如何继续 代码如下: def view_all_by_CompID(data): with sqlite3.connect("Clients.db") as db:
def view_all_by_CompID(data):
with sqlite3.connect("Clients.db") as db:
cursor = db.cursor()
cursor.execute("""SELECT CompanyID, Forename, Surname, eMail
FROM Clients
JOIN Company
ON Clients.CompanyID = Company.CompanyID
WHERE CompanyID = ?""",(data,))
ViewData = cursor.fetchall()
DataTableCompAndClient([ViewData])
db.commit()
我不确定为什么会发生这种情况,因为我确信这两个表都存在,而且(我相信)调用它们是正确的。我不知道为什么它总是给我错误,所以任何帮助都将不胜感激。以下是有关代码的一些详细信息:
def view_all_by_CompID(data):
with sqlite3.connect("Clients.db") as db:
cursor = db.cursor()
cursor.execute("""SELECT CompanyID, Forename, Surname, eMail
FROM Clients
JOIN Company
ON Clients.CompanyID = Company.CompanyID
WHERE CompanyID = ?""",(data,))
ViewData = cursor.fetchall()
DataTableCompAndClient([ViewData])
db.commit()
Clients.db=数据库文件的名称
Clients=保存客户信息的表
公司=保存公司信息的表格
CompanyID=两个表中存在的指定公司ID号
我在这个网站上看过各种各样的例子,但我似乎无法解决这个问题。任何建议都将不胜感激。我在朋友的帮助下解决了这个问题。有几行代码缺失,需要输入,如下所示:
def view_all_by_CompID(data):
with sqlite3.connect("Clients.db") as db:
cursor = db.cursor()
cursor.execute("""SELECT Clients.CompanyID, Clients.Forename, Clients.Surname, Clients.eMail, Company.CompanyID, Company.CompanyName
FROM Clients
INNER JOIN Company
ON Clients.CompanyID = Company.CompanyID
WHERE Clients.CompanyID = ?""",(data,))
ViewData = cursor.fetchall()
DataTableCompAndClient([ViewData])
db.commit()
在select的开头,
Company ID
中有一个空格,这个空格应该是CompanyID
。谢谢,现在这样做并不是问题所在。您可以通过打印游标来回显游标运行的实际sql吗?\u执行并直接在sql客户机中测试这一点。请在表规范中捕捉它。我一直都很紧张。