【问题标题】:How do I create a .MDB and import a CSV into it using Python如何使用 Python 创建 .MDB 并将 CSV 导入其中
【发布时间】:2012-01-24 11:39:04
【问题描述】:

有没有人有任何创建新 Access 数据库并将 CSV 文件(仅特定字段)导入数据库的示例?

谢谢

【问题讨论】:

标签: python ms-access csv


【解决方案1】:

这是一个想法和更多信息的链接:

我还没有测试以下创建新的 mdb 所以ymmv!

import win32com.client
eng=win32com.client.gencache.EnsureDispatch("DAO.DBEngine.36")
eng.CreateDatabase("c:\\myNewAccessdB.mdb", win32com.client.constants.dbLangGeneral)

这里有一个link,提供了一些使用 python 和 ado 的好信息。

我希望这会有所帮助。

~M

抱歉,我没有任何将 csv 放入空 mdb 的示例 :( 如果我有任何东西,我稍后会发布。

【讨论】:

    【解决方案2】:

    您可以使用 PyPyODBC 来执行此操作。

    创建 Access mdb 文件:

    import pypyodbc
    pypyodbc.win_create_mdb( "D:\\Your MDB file path.mdb" )
    

    如果你愿意,可以继续使用pypyodbc连接creatmdb文件,并使用类似于pyodbc的ODBC接口进行操作:

    conn = pypyodbc.connect(u'''Driver={Microsoft Access Driver (*.mdb)};DBQ='''+mdb_path
                        , unicode_results = True
                        , readonly = False)
    
    cur = conn.cursor()
    cur.execute ('Drop table pypyodbc_test_tabl')
    cur.execdirect(u"""create table pypyodbc_test_tabl (ID integer PRIMARY KEY,product_name text)""")
    
    ...
    cur.close()
    conn.commit()
    conn.close()
    

    最后,压缩现有的 Access mdb 文件

    pypyodbc.win_compact_mdb("D:\\The path to the original to be compacted mdb file"
                       ,"D:\\The path to put the compacted new mdb file")
    

    【讨论】:

      猜你喜欢
      • 2021-05-17
      • 1970-01-01
      • 1970-01-01
      • 2020-03-05
      • 2019-03-11
      • 2021-08-17
      • 1970-01-01
      • 2017-04-13
      • 2010-09-27
      相关资源
      最近更新 更多