- Код: Выделить всё
function Form1.SQLGetDBData: sql;
begin
SELECT pip_address, pip_regnum, pip_datereg, pip_registrator
FROM publicip;
end;
procedure Form1.InitSQLQuery;
begin
SQLQuery1.SQL.Text := SQLGetDBData;
SQLQuery1.Open;
end;
По сути функция строчного типа, но внутри, этой функции, код пишется в виде sql запросов, что облегчит написание и читабельность сложных программ работающих с базами данных. Возвращается же строка с запросом, которую присваиваем SQLQuery1. Для динамических запросов, изменяемые параметры передаются в виде параметров функции. Конечно, это в рамках Lazarus не решить, нужно модифицировать компилятор, но интересно - на сколько актуальна данная тема, а там будем пробовать и договариваться
Другим решением, уже исключительно в рамках Lazarus, можно в редактор кода выводить содержимое техтовых полей, таких, как SQLQuery1.SQL. Текст во время редактирования виден в тексте программы, но обрабатывается по своим правилам, а во время компиляции игнорируется. Что-то вроде своеобразных окон в тексте программы. Это, по моему, можно решить чисто усилиями разработчиков Lazarus.