MySQL:自动将数据从常规 txt/csv 文件提取到数据库

标签 mysql database query-optimization

简介

我已经到处搜索过这个问题,但我并没有真正找到这方面的知识来源,所以如果这个问题对你来说似乎很基本,我很抱歉,但对我来说这是相当有趣的,因为事实上我很难猜测在谷歌上使用哪些关键字才能检索正确的信息。

问题描述:

事实上,我不知道如何处理 Windows 环境中笔记本电脑上安装的 MySQL 实例的问题:

  1. 我在 MySQL 中有一个数据库,其中有 50 个表,其中 15 或 20 个表是包含原始数据的表。其他表是我从原始数据表生成的表,以便正确创建允许我在 PowerBI 中分析数据的表。原始数据表由 ERP 数据库的转储提供。 我的问题如下:

如何自动执行接收累积 txt/csv 文件(通过笔式驱动器或任何其他传输机制)的过程,将这些文件存储到文件夹中,然后使用新信息更新现有表格?是否有任何引用的最佳实践来处理这种情况? 我如何通过连续的数据集成来保持数据库的良好状态,我的意思是,如何使我的数据库具有可扩展性和响应能力? 你能给我指出一些可以帮助我解决这个问题的资源吗?

目前,我将数据导入表中,分两步:

第一 - 我使用工作台导入向导帮助创建了表结构(我必须这样做,因为表有很多字段 - 从字面上看有几十个字段,并且这些字段需要位于数据库中)。我还在这些表中插入了主键和索引;

第二 - 我设法使用 LOAD DATA IN FILE 命令将文件中的数据加载到这些表中。

  • 使用导入向导创建的表的某些字段是作为数据类型文本创建的,在这种情况下不是必需的。我想将这些字段恢复为数据类型 NVARCHAR(255) 或其他类型,但是此时有很多字段可以更改数据类型并且位于多个表中,我想知道是否可以编写一个查询来执行以下操作创建我需要的所有 ALTER TABLES 语句的工作。

  • 所以我的问题是:更改多个列中多个字段中的数据类型是否安全(在这种情况下,我想将数据类型文本的字段更改为 NAVARCHAR(255))?做这个的最好方式是什么?您能给我指出一些资源或最佳实践吗?

    预先感谢您的帮助。 干杯

    最佳答案

    您需要一种脚本语言,而不是 UI。请参阅 mysql 命令行工具、操作系统的 shell 等。

    1. 删除数据库并重新创建
    2. 加载数据
    3. 调整数据以使列比加载数据提供的内容更清晰
    4. 原文为数据 BI 工具。

    如果您想讨论步骤 3,我们需要有关步骤 2 和步骤 4 之间需要进行哪些转换的详细信息。其中包括提供步骤 2 和 4 的格式或架构。

    关于MySQL:自动将数据从常规 txt/csv 文件提取到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52876663/

    相关文章:

    mysql - 优化按时间戳排序的大表的 SQL 查询

    sql - Oracle 中的日志连接和 where 子句执行时间

    php - 为什么值 1 被插入到数据库中?

    mysql复制与ansible

    mysql - 如何在mysql中过滤日期?

    python - 如何在Python中从csv文件创建mdb文件?

    c# - 在没有连接字符串的情况下处理项目

    mysql - 是否可以在 SQL 中的 SELECT 中合并?

    mysql - SQL 查询优化——真的没有什么可以改进的了吗?

    python - 我可以用少于 2 个查询和 1 个循环得到 "number of users who have created their first object since -date-"吗?