为了账号安全,请及时绑定邮箱和手机立即绑定

将CSV文件导入SQLServer

将CSV文件导入SQLServer

牛魔王的故事 2019-07-16 15:43:55
将CSV文件导入SQLServer我正在找人帮我进口.csv使用BULK INSERT我也没有什么基本的问题。问题:CSV文件数据可能有,(逗号)中间(Ex:Description),那么如何使导入处理这些数据?如果客户端从Excel创建CSV,则带有逗号的数据包含在""(双引号)(如下例所示)那么导入如何处理这个问题呢?如何跟踪某些行是否有错误的数据,哪些导入跳过?(导入是否跳过不可输入的行)下面是带有标头的示例CSV:Name,Class,Subject,ExamDate,Mark,Description Prabhat,4,Math,2/10/2013,25,Test data for prabhat.Murari,5,Science,2/11/2013,24,"Test data for his's test, where we can test 2nd ROW,  Test."sanjay,4,Science,,25,Test Only.和要导入的SQL语句:BULK INSERT SchoolsTempFROM 'C:\CSVData\Schools.csv'WITH(     FIRSTROW = 2,     FIELDTERMINATOR = ',',  --CSV field delimiter     ROWTERMINATOR = '\n',   --Use to shift the control to next row     TABLOCK)
查看完整描述

3 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

首先,您需要在数据库中创建一个表,在其中导入CSV文件。创建表后,按照以下步骤操作。

使用SQLServerManagementStudio登录数据库

·右键单击数据库并选择Tasks -> Import Data...

·点击Next >扣子

对于数据源,选择Flat File Source..然后使用Browse按钮选择CSV文件。在单击Next >纽扣。

·对于目标,选择正确的数据库提供程序(例如,对于SQLServer 2012,可以使用SQLServerNativeClient 11.0)。输入服务器名称。检查Use SQL Server Authentication单选按钮。在单击Next >纽扣。

·在“选择源表和视图”窗口中,您可以在单击Next >纽扣。

·检查Run immediately复选框并单击Next >纽扣。

·点击Finish按钮来运行包。


查看完整回答
反对 回复 2019-07-16
?
梦里花落0921

TA贡献1772条经验 获得超5个赞

2)如果客户端从excel创建CSV,则有逗号的数据包含在“.”中。(双引号)(如下例所示)那么导入如何处理这个问题呢?

您应该使用Format=‘CSV’,FIELDQUOTE=‘“选项:

BULK INSERT SchoolsTempFROM 'C:\CSVData\Schools.csv'WITH(
    FORMAT = 'CSV', 
    FIELDQUOTE = '"',
    FIRSTROW = 2,
    FIELDTERMINATOR = ',',  --CSV field delimiter
    ROWTERMINATOR = '\n',   --Use to shift the control to next row
    TABLOCK)


查看完整回答
反对 回复 2019-07-16
  • 3 回答
  • 0 关注
  • 1727 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信