📜  使用Python从 CSV 创建一个 sqlite 数据库

📅  最后修改于: 2022-05-13 01:54:58.123000             🧑  作者: Mango

使用Python从 CSV 创建一个 sqlite 数据库

先决条件:

  • 熊猫
  • SQLite

SQLite 是一个实现轻量级关系数据库管理系统的软件库。与 PostgreSQL、MySQL、Oracle 等其他 RDBMS 不同,它不需要服务器来运行,应用程序直接与 SQLite 数据库交互。 SQLite 通常用于小型应用程序,尤其是在嵌入式系统和移动应用程序中。要在Python中与 SQLite 数据库交互,需要 sqlite3 模块。

方法

  • 导入模块
  • 创建数据库并建立连接-

为了建立连接,我们使用返回连接对象的sqlite3.connect()函数。在此函数中传递要创建的数据库的名称。 SQLite 数据库的完整状态存储在扩展名为 .db 的文件中。如果未指定路径,则在当前工作目录中创建新数据库。

句法:

  • 使用 read_csv() 导入 csv

句法:

  • 将内容写入新表-

函数to_sql()根据数据帧的记录创建一个新表。在这个函数中传递表名和连接对象。表的列名与 CSV 文件的标题相同。默认情况下,数据帧索引被写为一列。只需将index参数切换为 False 即可删除此列。此外, if_exists参数指定表名已被使用时的行为。它可以引发错误(失败)、追加新值或替换现有表。

  • 检查表格内容-

创建一个游标对象并执行标准的 SELECT 语句来获取新创建的表的内容。

  • 关闭连接

正在使用的 CSV 文件: stud_data.csv

程序:

Python3
# Import required libraries
import sqlite3
import pandas as pd
  
# Connect to SQLite database
conn = sqlite3.connect(r'C:\User\SQLite\University.db')
  
# Load CSV data into Pandas DataFrame
stud_data = pd.read_csv('stud_data.csv')
# Write the data to a sqlite table
stud_data.to_sql('student', conn, if_exists='replace', index=False)
  
# Create a cursor object
cur = conn.cursor()
# Fetch and display result
for row in cur.execute('SELECT * FROM student'):
    print(row)
# Close connection to SQLite database
conn.close()


输出: