Python:CSV目录到Sqlite3数据库

xa9qqrwz  于 2023-04-03  发布在  Python
关注(0)|答案(1)|浏览(121)

我正在尝试使用Python将CSV文件的文件夹转换为Sqlite3数据库。最初,我能够将单个CSV文件中的数据转换为数据库和Python脚本文件的文件夹的本地文件。我现在已经将整个CSV文件夹复制到本地,现在我正在尝试使用for循环单独迭代每个文件,显然是为了保存复制和粘贴每个文件名的麻烦('xxxx. csv')400-500次。然而我发现这是这个过程中最困难的部分,我也没找到任何人做过这种事尽管我无法想象那是真的也许我只是问错了问题.这里是我到目前为止.我已经尝试了几个不同的尝试与for循环在不同的地方或不同的语法.任何建议是非常感谢,我觉得答案很简单,但我在这一点上不知所措。

import os
import csv
import sqlite3 

connection = sqlite3.connect('Frame_Data.db')
c = connection.cursor()

for part_file in os.listdir('C:\Frame_DataBase\Frame_Data_TEST_DB'):
  if part_file.endswith(".csv"):
   with open(part_file) as file:
    records = 0
    for row in file:
      c.execute("""INSERT INTO    FrmTbl(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI) 
              VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"""
             ,row.split(","))
      connection.commit()
      records += 1 
      connection.close()
0x6upsns

0x6upsns1#

import os
import csv
import sqlite3 

connection = sqlite3.connect('Frame_Data.db')
c = connection.cursor()

**dir = 'Frame_Data_TEST_DB'
for part_file in os.listdir(dir):
 if part_file.endswith(".csv"):
  with open(os.path.join(dir,part_file),'r') as file:**
    records = 0
    for row in file:
     c.execute("""INSERT INTO FrmTbl(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,AA,AB,AC,AD,AE,AF,AG,AH,AI) 
              VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"""
             ,row.split(","))
     connection.commit()
     records += 1 
connection.close()

相关问题