Постгрес Булк Инсерт

Postgres Bulk Insert



Групно уметање је процес који додаје више редова података у табелу у једној операцији. Ово може бити много брже од уметања једног по једног реда, посебно када се ради са великим количинама података.

Најчешћи метод извођења групног уметања у ПостгреСКЛ-у је команда ЦОПИ која може узети податке из датотеке или стандардног уноса и уметнути их у табелу. Команда ЦОПИ захтева да подаци буду у одређеном формату, обично ЦСВ или текстуална датотека.

Хајде да истражимо како да користимо ову команду да извршимо групно уметање у ПостгреСКЛ.







ПостгреСКЛ Булк Инсерт

Хајде да истражимо кораке за извођење групног уметања у ПостгреСКЛ.



Припремите своје податке

Пре него што извршите групно уметање, уверите се да су циљни подаци у одговарајућем формату. Препоручујемо вам да конфигуришете своје податке у ЦСВ или ТСВ формату. Можете структурирати циљне податке у редове и колоне који су одвојени зарезима или табулаторима.



Повежите се на ПостгреСКЛ

Затим се повежите на своју ПостгреСКЛ базу података користећи жељени клијент. За овај водич користимо ПСКЛ услужни програм за једноставну употребу и универзални приступ.





$ пскл -ИН постгрес < Назив базе података >

На пример, можете да покренете следећи упит да бисте користили базу података усер_информатион:

$ пскл -ИН постгрес Корисничке информације

Ако немате циљну базу података, можете је креирати помоћу команде ЦРЕАТЕ ДАТАБАСЕ:



ЦРЕАТЕ ДАТАБАСЕ < дб_наме >

Креирајте табелу

Затим морамо да се уверимо да табела у коју желимо да убацимо податке постоји. Структура табеле мора да одговара структури података укључујући подржане типове података.

Ако табела не постоји, можете користити команду ЦРЕАТЕ ТАБЛЕ:

ЦРЕАТЕ ТАБЛЕ нетворк_усерс (
ид СЕРИЈСКИ ПРИМАРНИ КЉУЧ,
корисничко име ВАРЦХАР ( 255 ) НИЈЕ НУЛЛ,
ип_аддресс ИНЕТ,
мац_аддресс МАЦАДДР,
мими ТЕКСТ
) ;

Дата команда би требало да креира табелу под називом „мрежни_усерс“ са колонама ид, корисничко име, ип_аддресс, мац_аддресс и миме.

Када је табела спремна, можемо учитати податке у ПостгреСКЛ табелу. Опет, добро је осигурати да је датотека података доступна са машине на којој сервер ради.

Извршите Булк Инсерт

Затим можемо користити команду ЦОПИ да учитамо податке из датотеке у табелу базе података. Синтакса команде је следећа:

ЦОПИ табле_наме ( колона1, колона2, колона3 )
ИЗ 'пут/до/датотека_података'
ВИТХ ( ФОРМАТ цсв | текст, ДЕЛИМИТЕР 'делимитер' , ХЕАДЕР ) ;

Можете да наведете формат (ЦСВ или текст), граничник који се користи у датотеци (нпр. „,“ за ЦСВ, „\т“ за ТСВ) и да ли датотека садржи ред заглавља.

На пример, да бисмо копирали податке у табелу „нетворк_усерс“, можемо покренути команду на следећи начин:

копирајте нетворк_усерс ( ид , корисничко име, ип_адреса, мац_адреса, миме ) из 'нетворк_усерс.
цсв'
са ( формат цсв, граничник ',' , заглавље ) ;

Ово омогућава ПостгреСКЛ-у да учита податке из датотеке у табелу. Можете да проверите да ли је уметање било успешно тако што ћете упити податке у табели.

ПостгреСКЛ Булк Инсерт ПгАдмин

Такође можемо да користимо графички интерфејс који пгАдмин пружа за увоз датотеке са подацима.

Започните покретањем пгАдмин-а и повежите се са својом ПостгреСКЛ базом података тако што ћете навести неопходне детаље о вези.

Затим пронађите табелу где желите да извршите масовно уметање. Можете пронаћи своје базе података и табеле у панелу претраживача.

Кликните десним тастером миша на табелу и изаберите „Увоз/извоз“.

У чаробњаку „Увоз/извоз“ изаберите опцију „Увоз“ и изаберите тип извора података. На пример, можете да увезете упит или међуспремник из датотеке.

У следећем кораку наведите детаље датотеке за групни уметак. Изаберите формат датотеке (ЦСВ, ТСВ, да одредите путању до датотеке са подацима и поставите граничник који се користи у датотеци.

Када будете задовољни опцијама увоза датотека, кликните на „У реду“ да бисте започели процес увоза. Требало би да видите статус процеса у доњем десном окну.

Можете да проверите да ли је увоз успешан отварањем алатке за упите и покретањем упита:

СЕЛЕЦТ * ФРОМ нетворк_усерс;

Излаз :

Закључак

Истражили смо како да користимо ПСКЛ и пгАдмин да извршимо групно уметање из екстерне датотеке података у табелу ПостгреСКЛ базе података.