"no such table: Sport" 关于从 sqlite 数据库(django 视图)导出 table
"no such table: Sport" on exporting a table from sqlite db (django view)
在我的 django 视图中,更新 table 后,我将用于将 table 导出到 csv 文件的代码:
import sqlite3 as sql
import os
import csv
# export Data
print ("Export data into csv file..............")
conn = sql.connect('sqlite3.db') # I tried: db.sqlite3 -> same
cursor=conn.cursor()
cursor.execute("select * from Sport")
with open("heartrateai_data.csv", "w") as csv_file:
csv_writer = csv.writer(csv_file, delimiter="\t")
csv_writer.writerow([i[0] for i in cursor.description])
csv_writer.writerows(cursor)
dirpath = os.getcwdb()+"/heartrateai_data.csv"
print("Data exported Successfully into {}".format(dirpath))
conn.close()
但它给了我错误:异常值:没有这样的 table:Sport。
我确定 table 名称是正确的,因为在我的 model.py.
中是相同的
我不确定它是否纠正了连接和连接关闭的行。我是新来的。
我的浏览器:
编辑 2:
我看到写路径的正确方法是 'E:\...' 或 r'E:...'。我在我的代码中这样写 conn = sql.connect(r'E:\Work\django\analysisData\db.sqlite3')
但我有同样的错误。 “没有这样的 table:运动”
试试这个
python manage.py makemigrations
python manage.py migrate
可能只是 Django 的错误
在我的代码中写下这些行之后:
con = sql.connect(r'E:\Work\django\analysisData\db.sqlite3')
cursor = con.cursor()
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
print(cursor.fetchall())
我看到 table 的名称与 model.py 中的名称不一样。 tables 的名字是:projectName_NameOfTable。
我修改了 table 名称,我没有再出现该错误。
在我的 django 视图中,更新 table 后,我将用于将 table 导出到 csv 文件的代码:
import sqlite3 as sql
import os
import csv
# export Data
print ("Export data into csv file..............")
conn = sql.connect('sqlite3.db') # I tried: db.sqlite3 -> same
cursor=conn.cursor()
cursor.execute("select * from Sport")
with open("heartrateai_data.csv", "w") as csv_file:
csv_writer = csv.writer(csv_file, delimiter="\t")
csv_writer.writerow([i[0] for i in cursor.description])
csv_writer.writerows(cursor)
dirpath = os.getcwdb()+"/heartrateai_data.csv"
print("Data exported Successfully into {}".format(dirpath))
conn.close()
但它给了我错误:异常值:没有这样的 table:Sport。 我确定 table 名称是正确的,因为在我的 model.py.
中是相同的我不确定它是否纠正了连接和连接关闭的行。我是新来的。
我的浏览器:
编辑 2:
我看到写路径的正确方法是 'E:\...' 或 r'E:...'。我在我的代码中这样写 conn = sql.connect(r'E:\Work\django\analysisData\db.sqlite3')
但我有同样的错误。 “没有这样的 table:运动”
试试这个
python manage.py makemigrations
python manage.py migrate
可能只是 Django 的错误
在我的代码中写下这些行之后:
con = sql.connect(r'E:\Work\django\analysisData\db.sqlite3')
cursor = con.cursor()
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
print(cursor.fetchall())
我看到 table 的名称与 model.py 中的名称不一样。 tables 的名字是:projectName_NameOfTable。 我修改了 table 名称,我没有再出现该错误。