26.10.2020 Вадим Хоменко 27749
Работа с базами данных PostgreSQL

Содержание:

1.       Создание подключения

2.       Выборка данных из базы на языке SQL

3.       Создание, добавление, изменение и удаление записей SQL PostgreSQL


Наиболее часто встречающаяся на практике систем СУБД для 1С – это, конечно же, MSSQL. А вот номером два является база PostgreSQL. В данной статье о ней и поговорим. База данных PostgreSQL – это система СУБД с открытым исходным кодом.


Но не только для 1С используется Postgre. Это полноценная СУБД, которую широко применяют для решения различных задач. А это значит, что с большой долей вероятности нужно будет вести обмен с 1С при помощи прямых запросов. Давайте рассмотрим, как работать с PostgreSQL из 1С.



Для начала необходимо будет скачать драйвер необходимой разрядности с официального сайта. После его установки переходим в конфигуратор 1С. 


1. Создание подключения.


В строке соединения необходимо указать имя драйвера, сервер, порт (по необходимости), имя базы данных, логин, пароль и кодировку (по необходимости).


Пример кода:


Создание подключения


Так же создадим необходимые для дальнейшей работы объекты и установим активное соединение. Эти процедуры выполняем единожды, после создания подключения:


установка активное соединение


После окончания работы с соединением обязательно закрывайте его:


окончания работы с соединением


Сами запросы формируются на языке SQL. Он напоминает язык 1С, но имеет англоязычный синтаксис, поэтому советую изучить дополнительную информацию по составлению прямых запросов SQL. 


2. Выборка данных из базы на языке SQL.


Для выборки мы создаем объект «Команда», в которую и будет передан составленный текст прямого запроса. После чего мы выполняем команду «Execute()», получив таким образом выборку данных. Выбираем первую запись «MoveFirst()» (аналог команды 1С РезультатЗапроса.Выбрать()), и в цикле получаем следующие записи «MoveNext()» (по аналогии с командой языка 1С Выборка.Следующий()).

Пример кода: 


база на языке SQL


3. Создание, добавление, изменение и удаление записей PostgreSQL.


Для добавления/создания записей используется соединение, и команда «Execute», в которую передается текст запроса.


Пример добавления:


Выборка данных из базы


Для изменения данных используется такая же конструкция, как и при создании/добавлении, за исключением самого текста запроса в базы данных на языке SQL. Здесь используется оператор UPDATE, где нужно указать, что мы меняем: SET – на какие значения, и WHERE – условие замены/обновления (обычно здесь задается конкретный уникальный идентификатор, если требуется изменить только одну запись).


Пример:


удаление записей PostgreSQL


Для удаления используется оператор DELETE. Пример построения запроса очень схож с изменением записей:


записи PostgreSQL


В итоге мы видим, что работать с базой данных SQL из 1С достаточно просто, ну, по крайней мере, не сложнее чем с другими популярными системами СУБД.


Специалист компании «Кодерлайн»

Вадим Хоменко

 

 

Наши проекты

АО «Вертолетная сервисная компания»
АО «Вертолетная сервисная компания»

Отрасль:
МТО эксплуатации вертолетной техники

Внедренное типовое решение:
1С:Бухгалтерия КОРП

- Консультации по сложным вопросам налогового и бухгалтерского учета;
- Ра...

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

- Бухгалтерский учет:
Банк и касса
Завершение периода
Нематериальные ...

Внедрение «1С:Бухгалтерия 8 ПРОФ» в компании «Мостехника»
ООО «Мостехника»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

Документооборот (ECM):
- Учет рабочего времени;
Управление персоналом и ка...

Внедрение ПП "1С:Управление небольшой фирмой 8 ПРОФ" в ООО «Шокостайл»
ООО «Шокостайл»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление небольшой фирмой 8 ПРОФ

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Планирование п...

ООО «Экслтрейд»
ООО «Экслтрейд»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Оформление заказов поставщикам Оптовая торговля Торговые операции ...

Внедрение системы финансового учета БИТ:Финанс
ООО «Алькор и Ко» (Л’Этуаль)

Отрасль:
Торговля

Внедренное типовое решение:
БИТ.Финанс

- Финансовый учет;
- Поддержка проекта внедрения МСФО;
- Регламентные рабо...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Создание полноценной управленческой системы взамен существующих
- Внедр...

ООО «Лаборатория успеха»
ООО «Лаборатория успеха»

Отрасль:
Общественное и плановое питание, гостиничный бизнес, туризм

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

Кадровый учет;
Расчет зарплаты;...

Автоматизация производственного планирования нефтесервисной компании на базе 1С:ЕРП 2.0
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Блок планирования проектов (процессы объемно-календарного планирования пр...

Внедрение блока расчета себестоимости РАУЗ в 1С:УПП 8
ООО «Пелигрин Матен»

Отрасль:
Производство

Внедренное типовое решение:
1С:Управление производственным предприятием

– Оформление заказов покупателей;
– Взаиморасчеты с покупателями;
– О...

ООО "Эскорт-Центр"
ООО "Эскорт-Центр"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Сквозной учет затрат по объектам
- Бухгалтерский учет
- Расчет зарплаты...

Автоматизация подсистемы учета взаиморасчетов с агентами и интернет-магазинами на базе «1С:Управление холдингом 8»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

– Оформление заказов поставщикам;
– Управление отношениями с поставщика...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение