Перейти к содержанию

Введение#

Понятие SQL-объекта относится к объектам сервера базы данных (далее БД). Такими объектами являются представления БД (View), процедуры и функции. Создание таких объектов зачастую выполняется непосредственно через интерфейсы управления базами данных (например, Microsoft SQL Server Management Studio). Данные объекты также являются частью проекта, поэтому должны храниться в его файловой системе (каталог ./source/sqlObjects). Сохранять их туда при каждом изменении не удобно, поэтому был разработан инструмент «Синхронизация БД». С его помощью можно быстро перенести в проект необходимые sql-объекты.

Синхронизация объектов БД#

Для выполнения синхронизации предусмотрена специальная страница интерфейса разработчика. Чтобы им воспользоваться, необходимо в меню выбрать пункт «Разработка», подпункт «Синхронизация объектов БД» либо перейти по ссылке http://localhost:3337/dev#/view/synchronize в браузере.

Откроется форма «Синхронизация объектов БД», на которой необходимо загрузить список несинхронизированных объектов с помощью кнопки «Загрузить» (Рисунок 2).

После выполнения загрузки необходимо выбрать интересующие объекты и выполнить синхронизацию с помощью кнопки «Выполнить» (Рисунок 3).

При этом в каталоге ./source/sqlObjects проекта будут созданы файлы с sql-скриптами создания выбранных объектов.

Пример

CREATE FUNCTION dbo.GetPriceLists
(    
    @Material bigint
)
RETURNS TABLE
AS
RETURN
(
    select p.DocumentDate, p.VCode
      , MaterialName = m.Name
      , MaterialGroupName = mg.Name
      , d.Price
    from dbo.PriceListDetail d
      inner join dbo.PriceList p on p.VCode = d.PCode
      inner join dbo.Material m on m.VCode = d.Material
      left join dbo.MaterialGroup mg on mg.VCode = m.MaterialGroup
    where (@Material > 0 and d.Material = @Material)
      or (@Material = 0)
)

В дальнейшем содержимое этой папки будет использовано как источник для обновления объектов БД. В списке будут только те sql-объекты, которые были изменены или созданы.