Импорт Sqlite из файла с пользовательским разделителем?

#ubuntu #sqlite

#ubuntu #sqlite

Вопрос:

У меня есть файлы .csv, которые сохраняются с «~ MySpecialDelimiter ~» в качестве символа «запятая». В других случаях я импортировал их в свою базу данных Sqlite3, заменяя эти значения запятыми. Однако один из этих файлов представляет собой текстовые файлы, и повсюду используются запятые. По понятным причинам импорт файлов становится затруднительным.

Как мне импортировать из «разделенного разделителем значения» с произвольным разделителем в Sqlite?

Я нашел .separator и установил его, но он возвращает «ожидалось 12 столбцов данных, но найдено 1».

Ответ №1:

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

Затем вы можете установить разделитель, используя либо .separator (если используете .import ), либо 3-й параметр CREATE VIRTUAL TABLE ... USING CSVFILE () .

Комментарии:

1. есть ссылка? Я нашел материал с символом .separator ранее, но это вызывало у меня проблемы. Я хотел бы прочитать об этом.

2. Да, хорошо, это то, что я видел. Я понимаю, что вы подразумеваете под «подразумевает», но это не очень понятно.