Лучший способ справиться с CSV, для подготовки к MySql - PullRequest
1 голос
/ 23 ноября 2010

У нас есть CSV-файл, который мы тщательно проверили и удалили, чтобы показать данные в нужном формате.

Таким образом, этот CSV-файл имеет размер чуть менее 500 КБ.Я преобразовал в sql (сохраненный как txt), надеюсь, что это нормально.

Исходный ввод данных CSV состоит из 3 полей, например:

'STANLEY', '7331', 'TAS'

'GORMANSTON', '7466', 'TAS'

После преобразования это выглядит так:

ВСТАВИТЬ В ПРИГОРОДЫ ('Locality', 'Pcode', 'State')ЗНАЧЕНИЯ ('\' STANLEY \ '', '\' 7331 \ '', '\' TAS \ '');

ВСТАВИТЬ В ПРИГОРОДЫ ('Locality', 'Pcode', 'State') ЗНАЧЕНИЯ('\' GORMANSTON \ '', '\' 7466 \ '', '\' TAS \ '');

Хорошо, я не хочу знать, что я не db officianado.Правильно ли я преобразовал это?Если я собираюсь сделать этот код более чистым для импорта в базу данных.

Для этого файла sql занимает более 1,6 мегабайта и содержит более 16 000 записей, поэтому я хочу убедиться, что я все сделал правильно.

Приветствия

Ответы [ 3 ]

2 голосов
/ 23 ноября 2010

Выглядит хорошо, кроме экранированных кавычек. Я использую эту технику обычно с файлом Excel. Где у меня есть мои столбцы, а затем я создаю формулу для генерации соответствующих операторов вставки. В качестве альтернативы вы можете использовать что-то вроде SSIS для передачи ваших данных в вашу базу данных.

2 голосов
/ 23 ноября 2010

Как и в комментарии Адама, вы, скорее всего, не захотите вставлять кавычки, что вы делаете с \ 'STANLEY \' и т. Д.

Кроме того, на стороне поля (местность и т. Д.) Убедитесь, что это обратные тики (тильда без сдвига), а сторона данных (STANLEY) - одинарные кавычки.

изменить на:

INSERT INTO suburbs (`Locality`,`Pcode`,'State`) VALUES ('STANLEY','7331','TAS');

Кроме этого, я не вижу в этом ничего плохого.

1 голос
/ 23 ноября 2010

Ваш SQL выглядит хорошо, хотя лишние одиночные кавычки не попадут в ваши записи? Я не уверен, хотите ли вы, чтобы «Стэнли» или просто Стэнли были в ваших записях, поэтому я оставлю это на ваше усмотрение.

У вас есть половина вашей работы. У вас есть стратегия вставки, у вас также есть стратегия отката? Похоже, что это большая миграция данных для вас, если я так скромно рекомендую вам попробовать вставить только несколько строк в нежелательной таблице, от которой вы не возражаете избавиться в первую очередь. Всегда неприятно, если изменения должны быть отменены, и нет ничего на месте или готовы пойти, чтобы отменить любые ошибки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...