amitesh1989 Ответов: 2

Как импортировать данные из CSV 2-го листа в SQL с помощью bcp


Привет кодер,

Мне нужно импортировать данные из формата excel (CSV) в базу данных SQL server.
Я знаю, как импортировать csv-файл в БД с помощью bcp, но только для одного рабочего листа я хочу импортировать данные второй работы в одном запросе.

Create table test (customer_id int,telephone nvarchar(20))
DECLARE @CMD varchar(200)
SET @CMD='BCP db.dbo.test IN "Filepath" -S server details -T -f -t, -c -E'
EXEC Master..XP_CMDSHELL @CMD


Используя приведенный выше код, я могу загрузить данные с 1-го листа excel, который находится в формате CSV, но я также хочу создать вторую таблицу и загрузить данные второго листа в базу данных в том же запросе.

Любые предложения !!!

Что я уже пробовал:

<pre lang="text">Create table test (customer_id int,telephone nvarchar(20))
DECLARE @CMD varchar(200)
SET @CMD='BCP db.dbo.test IN "Filepath" -S server details -T -f -t, -c -E'
EXEC Master..XP_CMDSHELL @CMD

2 Ответов

Рейтинг:
1

Andy Lanng

Csv-файлы не имеют нескольких вкладок. Это один текстовый файл.

Если вы сохраняете документ excel в формате csv, то он сохранит только лист, который вы просматриваете в данный момент.

Файлы Excel XLSX-файл-это XML-основе
Старые файлы Excel имеют собственный формат.

Вы можете создать подключение к данным в excel или импортировать его с помощью инструментов импорта в MSSQL.

Простой способ импорта данных в SQL Server[^]

Возможный скриптовый метод (я его не тестировал)
Импорт электронной таблицы Excel в базу данных SQL Server - статьи TechNet - США (английский) - TechNet Wiki[^]


Рейтинг:
1

Patrice T

Цитата:
Я знаю, как импортировать csv-файл в БД с помощью bcp, но только для одного рабочего листа я хочу импортировать данные второй работы в одном запросе.

CSV-файлы не имеют листов, потому что csv-файлы являются плоскими файлами данных.
Первая строка обычно представляет собой заголовки, а следующие строки - строки данных до конца.

Совет: если вы хотите управлять рабочими листами в csv-файлах, то самый простой способ-это, вероятно, иметь 1 csv-файл на каждый рабочий лист.


amitesh1989

Спасибо