将 Excel 转换为 SQL 插入语句

Posted

技术标签:

【中文标题】将 Excel 转换为 SQL 插入语句【英文标题】:Transform Excel to SQL insert statement 【发布时间】:2019-09-05 19:53:59 【问题描述】:

我正在寻求一些关于如何开始的想法的帮助。我在 SQL Server 中为培训系统创建了一个数据库。我有一些旧数据需要插入到 SQL Server 数据库中。 Excel 不是“表格”形式。数据记录如下图(行为员工姓名,列为培训姓名,绿框表示是)。该数据库由员工姓名和培训组成。

我的预期结果是自动生成类似的结果

INSERT INTO table_name
VALUES ("Name of training");

【问题讨论】:

请提供更完整的说明,说明您要将数据移动到的目标表。看起来您可能只需要在加载数据之前取消交叉表(参见,例如,pypi.org/project/un-xtab)。 【参考方案1】:

在 SQL 上创建表。标头等...

打开 excel 文件,将文件另存为 .csv,然后在 SQL 软件上将 .csv 文件导入您刚刚创建的新表中。

【讨论】:

【参考方案2】:

如果您正在寻找简单的交钥匙解决方案:

在迁移到 SQL 之前,您需要确保数据格式正确。使用单行作为标题名称,然后使用下面的值。如果您的数据不是那种格式,您需要找到一种新的方法来构建数据,以确保它对于 SQL 等关系数据库是正确的。如果您不熟悉 SQL 服务器,我建议您阅读 SQL 数据结构/关系数据库。

下一步是使用 Excel 另存为将文件转换为 CSV。

最后,您可以使用带有用户界面的解决方案的 SQL 导入向导来导入数据。要访问它,请右键单击 SSMS 中的数据库,转到任务,然后导入数据。您可以通过搜索找到有关数据导入向导如何工作的更多信息。

在我看来,从现有数据自动生成表要复杂得多,最好使用脚本语言(如 python)和 SQL 来完成。

【讨论】:

以上是关于将 Excel 转换为 SQL 插入语句的主要内容,如果未能解决你的问题,请参考以下文章

将excel工作表转换为sql脚本

将excel表格数据转换为sql语句

如何将Excel数据转换为SQL脚本

python操作excel转换为sql语句

怎么用Sql语句把日期转换为季度或者年度

如何在 Excel 中生成的 SQL 插入语句中获取行数?