В начало
Собственная функция в InterbaseВ базе данных имеется таблица «Nakladnaya», заполненная значениями номенклатур. Необходимо написать и
зарезервировать в «Interbase
6.5» свою функцию, которая выполняла бы операцию приведения к верхнему регистру
строк таблицы.
Рис. 1. Таблица «Nakladnaya» Например, запрос с использованием стандартной
SQL-функции «Upper» переведет в верхний
регистр только слова, написанные латиницей, что как бы не совсем «комильфо»,
т.к. мы живем в России.
Рис. 2. Результат работы функции «Upper» Чтобы создать нормальную, полноценную функцию обратимся к великому и могучему Дельфи. И для начала напишем библиотеку с нужной нам функцией, которая будет переводить в верхний регистр все без разбору слова, каким бы алфавитом их не написали бы.
Откомпилируем библиотеку, поместим в папку «C:\Program Files\Borland\InterBase\UDF» и зарегистрируем в «Interbase 6.5», точнее
задекларируем.
Если код выполнился без ошибок, можно начать проверять свою функцию «MyAnsiUpper». Пишем запросик:
Рис. 3. Результат работы функции «MyAnsiUpper» Таким образом, собственная функция
была задекларирована в «Interbase
6.5» и проверена. На рис. 3 видно, что в верхний регистр переведены все
названия номенклатур, и те что на кириллице, и те что
на латинице. |
| |||||