Хотя язык Delphi и выходит из моды его использования, но в определённых кругах
он всё также остаётся на высоте. Огромной темой, которая неразрывно связана
с любым языком программирования является тема баз данных. Существует
множество популярных СУБД, которые предоставляют свои плюсы и минусы при
работе с базами данных, запросами и т.д.
В этой статье я хочу осветить тему работы с SQL Server в Delphi.
Создаём соединение с SQL Server на Mac OS X в Direct Mode используя SDAC
В первой части статьи я остановлюсь на работе с SQL Server на Mac OS X.
Существующие провайдеры для SQL Server от Microsoft не позволяют работать им
в отличных от Windows платформах. Таким образом за бортом остаются
пользователи, которые используют в своей повседневной работе Mac OS X. Если
среди читателей есть приверженцы «надкушенного яблока» не отчаивайтесь, в
мире существует компонент, который позволяет работать с SQL Server на Mac OS
X при этом без использования клиента SQL Server. Проще говоря, можно
соединиться с SQL Server из Delphi на Mac OS X используя обычное TCP/IP
соединение.
Как это сделать? Представляю вам незаменимую для этого компоненту SDAC (SQL
Server Data Access Component).
Ее можно бесплатно скачать на официальном сайте разработчика
http://www.devart.com/sdac/download.html
Для начала создадим новое приложение в Delphi XE7, которое будет работать с
SQL Server.

Настраиваем прямой доступ. Для этого помещаем на форму компоненту
TMSConnection – MSConnection1. В компоненте выставляем в свойстве Provider
значение prDirect. Открываем редактор MSConnection1 и заполняем поля:
Server, Port, Authentication, Username, Password, Database.
На этом наши настройки подошли к концу. Поздравляю, вы настроили прямой
доступ к SQL Server.
Можно также установить прямой доступ во время запуска приложения. Код будет
следующим:
MSConnection1.Options.Provider := prDirect;
MSConnection1.Server := 'Server';
MSConnection1.Port := 1433;
MSConnection1.Authentication := auServer;
MSConnection1.Database := 'FISH_FACTS_DEMO';
MSConnection1.Username := 'sa';
MSConnection1.Password := '*************';
Теперь давайте напишем код для кнопок Connect и Disconnect:
procedure TMainForm.ConnectClick(Sender: TObject);
begin MSConnection1.Connect; MSQuery1.Open; end;
procedure TMainForm.DisconnectClick(Sender: TObject);
begin MSQuery1.Close; MSConnection1.Disconnect; end;
Запускаем приложения в режиме Direct Mode на Mac OS X

Для запуска приложения не нужно дополнительных библиотек.
Создаём соединение с SQL Server на Android, iOS в Direct Mode используя SDAC
После Mac OS X мы плавно подобрались к мобильным платформам, которые уже
давненько набрали большую популярность как среди разработчиков, так и среди
пользователей. Компания Devart решила не отставать от трендов сферы
разработки и пошла навстречу Delphi разработчикам, которые трудятся или
планируют трудится над приложениями мобильных устройств.
Во второй части статьи я хочу показать как можно легко создавать соединение
с базой данных мобильного приложения на Android и iOS используя SQL Server и
Delphi.
Принцип прямого соединения с Android и iOS в SQL Server схож на тот, который
я описал в первой части статьи о Mac OS X.
По традиции, для начала создадим пустой проект.
Далее идут шаги, которые аналогичны шагам (манипуляция с компонентом
TMSConnection и написание кода для кнопок Connect/Disconnect) описанных для
Mac OS X до момента написания кода кнопок Connect и Disconnect.
Поэтому чтобы не повторятся я эти шаги описывать не буду, а перейду сразу на
настройку прямого доступа в Android.
Настраиваем прямой доступ для Android

Создавая Android приложения работающее с SQL Server в Direct Mode (прямой
доступ), SDAC-у не нужно каких-нибудь дополнительных настроек для запуска
приложения. Как пример, приведу следующий рисунок на котором я изменил
только опцию целевой платформы и устройства (Target Platform – Android).
Запуск приложения в Direct Mode на Android
В заранее подготовленном проекте нажимаем кнопочку F9 и любуемся работающим
Android приложением с SQL Server в прямом доступе.
Настраиваем прямой доступ для iOS
Как и с Android приложением, iOS приложения работающие с SQL Server в режиме
прямого доступа не требуют никаких дополнительных настроек, чтобы этот режим
установить. Приведу аналогичный пример запуска iOS приложения.
Вышеописанными методами я показал, как можно легко работать с SQL Server на
различных платформах Mac OS X, Android, iOS без надобности установки клиента
SQL Server.
Если у функции приоритет пониженный, то она вычисляется последней. Если приоритет нормальный – расстановка приоритета не производится вообще. Если приоритет повышенный – функция вычисляется первой.