Подтвердить что ты не робот

Как импортировать файл tsv с помощью SQLite3

У меня есть tsv (файл с разделителями вкладок), который я хотел бы импортировать с помощью sqlite3. Кто-нибудь знает, как это сделать?

Я установил sqlite3, но еще не создал ни одну базу данных или таблицы.

Я пробовал команду

.import /path/filename.tsv my_new_table

но он дает мне ошибку: нет такой таблицы: my_new_table.

Однако из того, что я прочитал, он должен автоматически создать таблицу, если она не существует. Означает ли это, что мне нужно сначала создать и использовать базу данных, или есть еще один трюк для импорта .tsv файла в sqlite?

4b9b3361

Ответ 1

Вам следует создать таблицу, установить разделитель и импортировать данные sqlite wiki.

Пример для TSV:

data.tsv (вкладка как разделитель):

Bob 30  1000
Wendy   20  900

1) Создайте таблицу и установите TAB в качестве разделителя:

sqlite> create table people (name text, param1 int, param2 int);
sqlite> .separator "\t"

2) Данные импорта:

sqlite> .import data.tsv people

И результат:

sqlite> select * from people;
Bob 30  1000
Wendy   20  900

Ответ 2

На самом деле существует специальный режим для импорта разделяемых разделов файлов:

sqlite> .mode tabs
sqlite> .import data.tsv people

Также, если вы включаете строку заголовка в свой файл tsv, вы можете позволить sqlite автоматически создать таблицу. Просто используйте неиспользуемое имя таблицы во время импорта и измените файл tsv на:

name    param1  param2
Bob 30  1000
Wendy   20  900