Как экспортировать данные из txt в sql
отключи индексацию только сначала
я никогда не занимался бд, но мне всегда казалось что любая субд имеет некий язык, который подобные вещи может легко сделать. а то и готовый инструмент.
в management studio правой кнопкой по базе-> импорт данных-> источник - "неструктурированный файл"
ага. а если у меня каждое поле заключено в кавычки, а в БД эти кавычки нужно убрать?
а если у меня каждое поле заключено в кавычки, а в БД эти кавычки нужно убрать?ну так потом SELECT и UPDATE тебе в руки
ах, да. файл весит 13 гиговотрежь маленький кусочек, потренируй скрипт на нем. Как доведешь до идеала, запускай на основном файле.
там какая-то достаточно гибкая настройка, так что скорее всего можно
я обычно всякими sed-ами генерю текстовый файлик со строками insert into ...
я обычно всякими sed-ами генерю текстовый файлик со строками insert into ...Угу, и получаешь скрипт работающий 5 часов на базах MyISAM, и 8 часов на InnoDB +генерить второй файлик на харде размером 20 Гигов в дополнение к этому 13-гиговому - грусть и печаль, да ещё и займёт прилично времени
Хотя, если объеденить инсерты, и слать в mysql через pipe, то, может, выйдет лучше, конечно, но всё-равно лишние телодвижения, проще воспользоваться встроенным функционалом импорта из csv
2. "всякими sed'-ами" (c) или пятистрочным скриптом на питоне/перле/etc подготовить файл для bulk insert
3. выполнить bulk insert
Угу, и получаешь скрипт работающий 5 часов на базах MyISAM, и 8 часов на InnoDBвот для того чтоб такого не было и отключаются индексы
быстрее будет перестроить их потом
вот для того чтоб такого не было и отключаются индексыЭто не спасает, вернее этого не достаточно.
быстрее будет перестроить их потом
И при булке они тоже выключаются.
Оставить комментарий
woofster
rебята, вот такой квест:есть txt-файл, с данными разделенными запятой
как проще всего эти данные перенести в базу данных MsSQL?
ах, да. файл весит 13 гигов