C++ 中实现把EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码

导入 Excel 数据到数据库的过程可以分为两步:读取 Excel 数据和将数据写入数据库。下面将分别进行说明。

读取 Excel 数据

  1. 安装必要的依赖包

    sh
    pip install pandas openpyxl

  2. 创建一个 Python 脚本,并导入 pandas

    python
    import pandas as pd

  3. 读取 Excel 文件

    ```python

    读取 Excel 文件

    df = pd.read_excel('excel_file.xlsx', engine='openpyxl')
    ```

  4. 查看读取到的数据

    ```python

    打印前 10 行数据

    print(df.head(10))
    ```

将数据写入数据库

  1. 安装必要的依赖包

    sh
    pip install sqlalchemy

  2. 导入 sqlalchemy 库,创建数据库连接并定义表结构

    ```python
    from sqlalchemy import create_engine, Column, Integer, String
    from sqlalchemy.ext.declarative import declarative_base

    engine = create_engine('database://user:password@host:port/database_name')
    Base = declarative_base()

    class ExcelData(Base):
    tablename = 'excel_data'

    id = Column(Integer, primary_key=True)
    column_name1 = Column(String(255))
    column_name2 = Column(Integer)
    column_name3 = Column(String(255))
    # 定义其他列
    

    ```

  3. 创建数据库表

    python
    Base.metadata.create_all(engine)

  4. 将 Excel 数据写入数据库

    ```python

    将 Excel 数据写入数据库

    df.to_sql('excel_data', con=engine, if_exists='replace', index=False, chunksize=1000)
    ```

  5. 验证数据是否已经写入数据库

    ```python
    from sqlalchemy.orm import sessionmaker

    Session = sessionmaker(bind=engine)
    session = Session()

    data = session.query(ExcelData).first()
    print(data.column_name1, data.column_name2, data.column_name3)
    ```

以上就是把 Excel 的数据导入数据库的完整攻略。下面是两条示例说明:

示例一

  1. 对于示例一,假设 Excel 文件名为 example.xlsx,文件中的数据如下:
名称 数量 价格
商品1 10 29.99
商品2 7 19.99
商品3 3 9.99
商品4 5 49.99
  1. 通过上述攻略中的代码,将数据导入 SQL Server 数据库中。

```python
import pandas as pd
from sqlalchemy import create_engine, Column, Integer, Float, String
from sqlalchemy.ext.declarative import declarative_base

engine = create_engine('mssql+pyodbc://user:password@server/database_name?driver=SQL+Server')
Base = declarative_base()

class Commodity(Base):
tablename = 'commodity'

   id = Column(Integer, primary_key=True)
   name = Column(String(255))
   quantity = Column(Integer)
   price = Column(Float)

Base.metadata.create_all(engine)

df = pd.read_excel('example.xlsx', engine='openpyxl')
df.to_sql('commodity', con=engine, if_exists='replace', index=False, chunksize=1000)
```

  1. 验证数据是否已经写入数据库

```python
from sqlalchemy.orm import sessionmaker

Session = sessionmaker(bind=engine)
session = Session()

commodity = session.query(Commodity).first()
print(commodity.name, commodity.quantity, commodity.price)
```

运行以上代码,输出结果如下:

sh
商品1 10 29.99

示例二

  1. 对于示例二,假设 Excel 文件名为 data.xlsx,文件中的数据如下:
学生姓名 学号 年级 专业
张三 1001 大一 计算机科学与技术
李四 1002 大二 软件工程
王五 1003 大三 信息安全
赵六 1004 大四 数学与应用数学
  1. 将数据导入 Access 数据库中。

```python
import pandas as pd
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

engine = create_engine('access+pyodbc://user:password@server/database_path')
Base = declarative_base()

class Student(Base):
tablename = 'student'

   id = Column(Integer, primary_key=True)
   name = Column(String(255))
   student_id = Column(Integer)
   grade = Column(String(255))
   major = Column(String(255))

Base.metadata.create_all(engine)

df = pd.read_excel('data.xlsx', engine='openpyxl')
df.to_sql('student', con=engine, if_exists='replace', index=False, chunksize=1000)
```

  1. 验证数据是否已经写入数据库

```python
from sqlalchemy.orm import sessionmaker

Session = sessionmaker(bind=engine)
session = Session()

student = session.query(Student).first()
print(student.name, student.student_id, student.grade, student.major)
```

运行以上代码,输出结果如下:

sh
张三 1001 大一 计算机科学与技术

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++ 中实现把EXCEL的数据导入数据库(ACCESS、MSSQL等)实例代码 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • mysql 如何使用JSON_EXTRACT() 取json值

    当mysql存储JSON格式的数据时,我们需要对JSON进行提取。MySQL 5.7版本以上,提供了JSON_EXTRACT()函数来实现从JSON中提取值。 JSON_EXTRACT()函数的语法 JSON_EXTRACT(json_path) json_path为JSON路径参数,返回该路径下的JSON值。 示例1 已知json字段’data’的值为: …

    C 2023年5月23日
    00
  • Mysql基础之常见函数

    Mysql基础之常见函数 在Mysql中,除了基本的SQL语句外,还有很多内置函数可以方便我们进行数据操作。下面列举了一些常见的Mysql函数: 字符串函数 CONCAT(str1, str2, …) 将多个字符串拼接在一起,返回一个新的字符串。其参数可以是任意个字符串,拼接的顺序是按照参数顺序来的。 示例: SELECT CONCAT(‘Hello’,…

    C 2023年5月22日
    00
  • C语言利用system调用系统命令行详情

    C语言可以利用system()函数来调用系统命令行。一般情况下,system()函数会启动一个新的进程来执行传入的命令,然后等待该进程结束后返回。在使用system()函数时,需要先包含头文件<stdlib.h>。 函数原型 int system(const char *command); 参数说明 command:需要执行的命令字符串,可以是系…

    C 2023年5月23日
    00
  • C++实现简单的学生成绩管理系统

    C++实现简单的学生成绩管理系统攻略 系统功能概述 一般的学生成绩管理系统包含以下功能: 添加学生及其成绩信息 删除学生及其成绩信息 查询学生及其成绩信息 修改学生及其成绩信息 统计分析学生信息 保存和读取数据 开发环境配置 操作系统:Windows、Linux、macOS等 编译器:GCC、Microsoft Visual C++等 集成开发环境(IDE)…

    C 2023年5月23日
    00
  • C语言实现停车管理系统

    C语言实现停车管理系统 简介 本文介绍如何使用C语言实现一个简单的停车管理系统。停车管理系统可以用来记录车位状态、车辆信息、收费等等相关内容。在本文中,我们将使用文件来存储数据,使用控制台界面进行输入和输出。 1. 设计数据结构 在停车管理系统中,最重要的数据结构是车辆信息。我们可以使用struct来定义一个车辆信息的数据结构: struct car_inf…

    C 2023年5月23日
    00
  • 01-C语言概述

    C语言概述 1.什么是C语言 C语言就是人和计算机交流的一种语言语言是用来交流沟通的。有一方说,有另一方听,必须有两方参与,这是语言最重要的功能: 说的一方传递信息,听的一方接收信息; 说的一方下达指令,听的一方遵循命令做事情。 语言是人和人交流,C语言是人和机器交流。只是,人可以不听另外一个人,但是,计算机是无条件服从。语言有独特的语法规则和定义,双方必须…

    C语言 2023年4月18日
    00
  • 详解Matlab如何绘制小提琴图

    让我给大家详细讲解一下“详解Matlab如何绘制小提琴图”的完整攻略。在此之前,请确保你已经安装了Matlab软件。 首先,我们需要了解什么是小提琴图。小提琴图(Violin Plot)是一种可视化方式,它能够同时显示数据的分布情况和概率密度。小提琴图可以展示出不同数据之间的差异,同时还能显示出数据的整体分布情况和密度。接下来,我将详细介绍如何使用Matla…

    C 2023年5月23日
    00
  • 如何使用C语言将数字、字符等数据写入、输出到文本文件中

    下面是如何使用C语言将数字、字符等数据写入、输出到文本文件中的攻略。 打开文件 在C语言中,我们通常使用标准库函数fopen()来打开文件。 可以使用下列代码来打开一个名为file.txt的文件。 FILE *fp = fopen("file.txt", "w"); 其中,第一个参数是文件路径,第二个参数是表示要在文件…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部