gpt4 book ai didi

sql - 将 Excel 工作表转换为 SQL 脚本

转载 作者:行者123 更新时间:2023-12-01 19:41:49 28 4
gpt4 key购买 nike

我有一个 Excel 工作表 (.xls)。我需要将它转换成sql脚本。单个 Excel 工作表由多个表组成。因此生成的脚本应该有多个创建表和插入语句。我尝试了各种工具,例如 http://www.sqlconverter.com/但我无法得到适当的解决方案。还有其他方法可以做到吗?

最佳答案

我注意到您的评论,即使用导入向导的解决方案比您想要的更复杂,因此您必须尝试加载数据。

您可以尝试批量插入:

首先,在每张工作表上执行“另存为”操作并将其转换为 CSV 文件。对于要导入的每张工作表,您都应该有一个 CSV 文件。

接下来,使用您要引入的类似数据类型和长度创建一个表。典型的 Excel 单元格是 VARCHAR(255)(如果您想具体一点,可能更像 NVARCHAR(255),但是我们将在此解决方案中避免使用 unicode)。

因此,如果您的 Excel 工作表有 5 列:

CREATE TABLE Sheet1
(Column1 VARCHAR(255)
, Column2 VARCHAR(255)
, Column3 VARCHAR(255)
, Column4 VARCHAR(255)
, Column5 VARCHAR(255)
)

然后,您可以向表中写入一个简单的批量插入,前提是您在网络共享或 SQL 实例所在的服务器/计算机本地拥有该文件。例如,如果您的计算机上有该文件,并且想要尝试推送到网络上的服务器,SQL 会认为下面脚本中的 C:\ 位于服务器上,而不是您的服务器上。机器。您必须共享一个文件夹并通过网络访问它:\\MyMachineName\SharedFolder\Sheet1.csv

BULK INSERT dbo.Sheet1
FROM 'C:\LocalFolder\WhereTheFileIs\Sheet1.csv'
WITH (
FIELDTERMINATOR = ','
, ROWTERMINATOR = '\n'
)

如果文件和表中存在相同数量的列,这应该将数据放入该表中。

虽然不漂亮,但是很简单。 BULK INSERT 是一种久经考验的基本快速加载方法。

关于sql - 将 Excel 工作表转换为 SQL 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13067370/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com