Строки соединения представляют собой абстрактный интерфейс задания и передачи параметров соединения баз данных.
Строка соединения представляет собой множество пар <параметр> = <значение>, разделенных символом ';'. В строке соединения не учитываются пробелы разделяющие знаки равенства и точки с запятой. Содержание строки зависит от типа базы данных, с которой неободимо открыть соединение. Для описания формата строки смотри спецификацию для соотв. типа СУБД.
В строке не обязательно указывать все допустимые для данного типа соединения параметры. Незаданные параметры могут быть инициализированы автоматически при инициализации соединения значениями по-молчанию. Имена параметров соединения являются регистронезависимыми (т.е. допускается наличие любого из перечисленных: Host, HOST, hoST и т.д.).
Для работы с абстрактной строкой соединения (например, в случае, когда заранее неизвестно с каким типом СУБД ведется работа) используется интерфейс класса TDbConnParams.
Допускается явное и неявное задание параметров соединения. В случае явного задания в качестве значения параметра берется строка, стоящая после знака равно ('='). При явном способе описания параметров соединения обязательно должен быть задан тип соединения.
var Conn: TDbaConnection; ... begin ... Conn.ConnString := 'driver = Mysql; host = localhost:3306; user = root';
При неявном задании в качестве значения параметра могут быть использованы алисы или переменные. В независимости от типа параметризации строки, в случае неявного описания, в качестве значений параметров используются зарезервированные слова, начинающееся с симовлов '@' или ':'. Строка может содержать одновременно как явно так и неявно заднные параметры.
var Conn: TDbaConnection; ... begin ... Conn.ConnString := 'host = @@myhost; user = @@myuser; charset = :def_charset';
Важно! Все значения, начинающиеся с служебных символов '@' или ':' трактуются как параметризованные значения. При этом будет автоматически использован режим неявного определения значений параметров.
Значения, начинающиеся с символа '@', называются алиасами соединения. Механизм алиасов может быть использован для задания сервера или службы базы данных или логина, от имени которого должно быть отркыто соединения. Остальные параметры могут быть неявно заданы только через механизм переменных. Более подробно - см. AboutConnStrings.AboutConnAliases