Difference between revisions of "RU/kb/00000179"
From Apache OpenOffice Wiki
(Created page with '<!-- Обязательный элемент --><section begin=title /><noinclude>{{DISPLAYTITLE:База Знаний: </noinclude>{{OOoB|1}}. Добавление функци…') |
(Корректировка стиля и тегов) |
||
Line 1: | Line 1: | ||
− | + | <section begin=title /><noinclude>{{DISPLAYTITLE:База Знаний: </noinclude>{{OOoB|1}}. Добавление функций в HSQLDB<noinclude>}}</noinclude><section end=title /> | |
− | + | {{BreadCrumbL10n|RU/kb/module/base/hsqldb}} | |
− | + | __NOTOC__ | |
− | |||
− | + | <section begin=toc /> | |
+ | Часто приходится создавать запросы с применением нестандартных функций. В терминах HSQLDB функции, не описанные в её интерфейсе, являются нестандартными. Не определена даже такая простая функция, как извлечение квадратного корня. | ||
+ | |||
− | |||
Для определения новых функций необходимо использовать встроенные процедуры. | Для определения новых функций необходимо использовать встроенные процедуры. | ||
− | |||
− | |||
+ | В HSQLDB 1.8 встроенные процедуры реализованы только при помощи классов JAVA<ref>[[RU/kb/sources#31|[31] Подробнее о классах java Math.]]</ref>. | ||
− | + | Выбираем пункт меню {{Menu|Сервис|SQL}} и вводим команду | |
− | + | {{RUcode|40|CREATE ALIAS SQRT FOR "java.lang.Math.sqrt"}} | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | Теперь можно выполнять запросы /создавать представления вида | |
+ | {{RUcode|40|SELECT SQRT(A) , B FROM MYTABLE;}} | ||
− | + | {{Documentation/Note|Данный метод работает только со статически определёнными классами JAVA. Если в классе java процедура определена с "перегрузкой" аргументов, то может быть использован только первый из определённых вариантов функции. Для доступа к остальным вариантам необходимо статически определить соответствующую функцию (процедуру) класса JAVA.}} | |
− | + | ||
− | < | + | <section begin=signature/> |
+ | {{RUsignyear|BigAndy|BigAndy|2010}} | ||
+ | <section end=signature/> | ||
+ | {{RUkbBaseBottom}} |
Revision as of 12:48, 11 October 2010
< Apache OpenOffice | База знаний | Модули Apache OpenOffice | Apache OpenOffice Base | Встроенная база данных HSQLDB
Часто приходится создавать запросы с применением нестандартных функций. В терминах HSQLDB функции, не описанные в её интерфейсе, являются нестандартными. Не определена даже такая простая функция, как извлечение квадратного корня.
Для определения новых функций необходимо использовать встроенные процедуры.
В HSQLDB 1.8 встроенные процедуры реализованы только при помощи классов JAVA[1].
Выбираем пункт меню Сервис → SQL и вводим команду Template:RUcode
Теперь можно выполнять запросы /создавать представления вида Template:RUcode