如何将Excel数据转换为SQL插入?

我需要上传几千个地址到一个Web门户。 我没有访问网站本身,必须使用下面的INSERT语句:

INSERT INTO Address (AddressTypeID, Address1,City, State, Zip, Phone, PersonName, DisplayName, IsDefault, StatusID, UserID) VALUES ('1', 'SQL Herro st', 'SLC', '42', '84087', '8015957258', 'Bruce Wayne', 'Bruces address', 'False', '1', '3019') 

我有在Excel中的地址,但我真的不知道如何在导入数据时迭代此代码一千次。

你有不同的select,取决于你正在使用的服务器,但与您目前的信息,你可以做到以下几点。

  1. 点击第一行的第一个空列,即如果数据在第2行,所有的列从a到k,那么你selectL2
  2. 粘贴下面的代码

     ="INSERT INTO Address (AddressTypeID, Address1,City, State, Zip, Phone, PersonName, DisplayName, IsDefault, StatusID, UserID) VALUES '"&A2&"', '"&B2&"', '"&C2&"', '"&D2&"', '"&E2&"', '"&F2&"', '"&G2&"', '"&H2&"', '"&I2&"', '"&J2&"', '"&K2&"'" 
  3. 检查查询是否正确,它的计算方法是a2-k2)

  4. 复制 – >将特殊值只粘贴到下一列,所以你保留你的代码,但是你可以select所有具有计算结果的行到你的sql查询工具

在这里输入图像描述

SQL Server Management Studio将允许您从Excel文件导入数据。 这实际上是做一个临时的SSIS包来运行你的导入。

  1. 右键单击要将数据导入到的数据库。
  2. 检查你的列设置,并确保你所有的数据types是正确的。
  3. 在菜单中select“任务”,然后find“导入数据”
  4. 在数据源下拉菜单中,您可以select“Microsoft Excel”
  5. 设置你的文件path,然后点击下一步
  6. selectSQL本机客户端作为您的数据源,它应该默认为您右键单击的服务器和数据库
  7. 您可以导入到现有的表或创build一个新的表并configuration映射。
  8. 运行该过程并检查是否有错误。

现在,一些警告。 为了从Excel文件导入,您需要安装Microsoft.ACE.OLEDB驱动程序。 我也遇到了Excel中数据types转换和其他类似问题。

当我需要进行Excel导入时,通常会将其转换为CSV,因为这更简单。 这与在Excel应用程序中将文档保存为CSV一样简单。 然后,只需将上面的第一步更改为平面文件导入。

进行任何导入以真正加倍检查导入的列设置时,这是一个好主意。 对于CSV文件,至less可以通过parsing某些行来获取数据types的导入猜测。 这通常做得很好,但我经常需要清理一下。 像更改浮点数到小数点,并设置更大的string长度,以避免任何截断错误。