Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
sqlalchemy与sqlite一起使用,以避免sql不创建表或数据库_Sqlite_Sqlalchemy - Fatal编程技术网

sqlalchemy与sqlite一起使用,以避免sql不创建表或数据库

sqlalchemy与sqlite一起使用,以避免sql不创建表或数据库,sqlite,sqlalchemy,Sqlite,Sqlalchemy,我是炼金术新手。当我运行此代码时,没有数据库。我希望它创建数据库,添加定义的表和数据。阅读to_sql的文档时,如果表不存在(它不存在),那么这段代码应该创建该表,当我运行它时,它会抛出一个错误,即该表没有列num 1???并且不创建数据库。请问我做错了什么 import pandas as pd import sqlite3 from sqlalchemy import create_engine date_stuff = [ (20171219, 13.71,28), (20171319

我是炼金术新手。当我运行此代码时,没有数据库。我希望它创建数据库,添加定义的表和数据。阅读to_sql的文档时,如果表不存在(它不存在),那么这段代码应该创建该表,当我运行它时,它会抛出一个错误,即该表没有列num 1???并且不创建数据库。请问我做错了什么

import pandas as pd
import sqlite3
from sqlalchemy import create_engine

date_stuff = [ (20171219, 13.71,28),  (20171319, 144.71,33), (20171919, 99.99,99)]
labels       =  ['date', 'num 1' , 'num 2']

dev_env   = "/home/test/Desktop/mtest/hvdata/"
db_name = "tinydatabase.db"


def new_sql_add ( todays_data ):


        todays_data.to_sql(name='mcm_trends',  con = db ,if_exists='append')



if __name__  == '__main__' :

    db_path =  dev_env + db_name

    db = create_engine('sqlite:///db_path')

    df_for_sql  = pd.DataFrame.from_records( date_stuff , columns = labels)

    new_sql_add ( df_for_sql )

至少您没有正确地传递db路径。您正在当前目录中打开一个名为db_path的文件,而不是使用绑定到
db_path
的字符串作为path。@IljaEverilä您是上帝!!!我花了好几个小时看这个,却完全错过了。非常感谢你帮我走出一个很深的黑洞。我不能将此标记为答案,因为SE不相信我的判断。