首页 > 解决方案 > 带有sqlite to_sql的sqlalchemy不创建表或数据库

问题描述

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

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 )

标签: sqlitesqlalchemy

解决方案


推荐阅读