Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Название:Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2006
- Город:Санкт-Петербург
- ISBN:5-94157-609-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ краткое содержание
Рассмотрены вопросы, необходимые разработчику для создания клиент-серверных приложений с использованием СУБД Firebird, явившейся развитием СУБД Borland Interbase 6. Содержится обзор концепций и моделей архитектуры клиент/сервер, а также практические рекомендации по работе с клиентскими библиотеками Firebird. Детально описаны особенности типов данных SQL, язык манипулирования данными (Data Manipulation Language, DML), а также синтаксис и операторы языка определения данных ( Data Definition Language, DDL). Большое внимание уделено описанию транзакций и приведены советы по их использованию при разработке приложений. Описано программирование на стороне клиента и сервера написание триггеров и хранимых процедур, создание и использование событий базы данных, обработка ошибок в коде на сервере и многое другое. Материал сопровождается многочисленными примерами, советами и практическими рекомендациями.
Для разработчиков баз данных
Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
См. также LTRIM(), RTRIM()
FREEUDFLIB |
F_PROPERCASE(VALUE) |
Win32 |
Преобразует строку в "правильный" вид, то есть берет каждое слово и заменяет первый символ на эквивалент в верхнем регистре, переводя каждый другой символ слова в нижний регистр |
Аргументы |
VALUE: столбец или выражение, результатом вычисления которого является значение типа строки |
Возвращаемое значение |
Строка, подобная следующей: 'Now Is The Time For All Good Men To Come To The Aid Of The Party' |
Замечания |
Хотя эта функция и удобна для некоторых задач, она имеет ряд ограничений. В частности, не может правильно трактовать такие имена, как dOliveira, OHalloran или MacDonald |
Пример |
Следующий оператор вернет строку 'Eric S. Raymond': SELECT F_PROPERCASE('ERIC S. RAYMOND') FROM RDB$DATABASE; |
Связанные или похожие функции |
.I См. также LOWER(), UPPER() |
Функции BLOB [159] Самый последний вариант библиотеки FreeUDFLib с исправленными функциями BLOB находится на www.ibase.ru. - Прим. науч. ред.
FBUDF |
STRING2BLOB(VALUE) |
Linux, Win32 |
Принимает поле строки (столбец, переменную, выражение) и возвращает текст BLOB |
Аргументы |
VALUE: столбец или выражение, результатом вычисления которого является значение типа VARCHAR 300 символов или меньше |
Возвращаемое значение |
Текст BLOB |
Замечания |
В большинстве случаев нет необходимости вызывать эту функцию. Firebird напрямую принимает строки в качестве входных данных для BLOB |
Пример |
Следующий фрагмент модуля PSQL выполняет конкатенацию двух строк и конвертирует результат в текст BLOB: . . . DECLARE VARIABLE V_COMMENTl VARCHAR(250); DECLARE VARIABLE V_COMMENT2 VARCHAR(45); DECLARE VARIABLE V_MEMO VARCHAR(296) = ' '; . . . SELECT<. . .другие поля. . .>, COMMENT1, COMMENT2 FROM APPLICATION WHERE APPLICATION_ID = :APP_ID INTO <...другие переменные...>, :V_COMMENTl, V_COMMENT2; IF (V_COMMENT1 IS NOT NULL) THEN V_MEMO = V_COMMENT1; IF (V_COMMENT2 IS NOT NULL) THEN BEGIN IF (V_MEMO = '') THEN V_MEMO = V_C0MMENT2; ELSE V_MEM0 = V_MEMO ||' ' || V_COMMENT2; END IF (V_MEMO <> ' ') THEN INSERT INTO MEMBERSHIP( FIRST_NAME, LAST_NAME, APP_ID, BLOB_MEMO) VALUES ( :FIRST_NAME, :LAST_NAME, :APP_ID, STRING2BLOB (:V_MEMO) ) ; . . . |
Связанные или похожие функции |
См. также F_BLOBASPCHAR() |
FREEUDFLIB |
F_BLQBMAXSEGENTLENGTH(VALUE) |
Win32 |
Принимаемая ссылка на BLOB В памяти возвращает количество сегментов для его хранения |
Аргументы |
VALUE является идентификатором столбца BLOB В таблице |
Возвращаемое значение |
Целое число, являющееся количеством сегментов |
Пример |
SELECT F_BLOBSEGMENTCOUNT(BLOB_MEMO) AS SEGMENT_COUNT FROM MEMBERSHIP WHERE MEMBER_ID = ....; |
Связанные или похожие функции |
См. также F_MAXBLOBSEGMENTSIZE(), F_BLOBSIZE() |
FREEUDFLIB |
F_BLOBSIZE(VALUE) |
Win32 |
Принимаемая ссылка на BLOB в памяти возвращает размер в байтах |
Аргументы |
VALUE является идентификатором столбца BLOB в таблице |
Возвращаемое значение |
Целое число, являющееся размером BLOB в байтах |
Пример |
SELECT F_BLOBSIZE(BLOB_MEMO) AS SIZE_OF_MEMO FROM MEMBERSHIP WHERE MEMBER_ID = ; |
Связанные или похожие функции |
См. также F_BLOBSEGMENTCOUNT(), F_BLOBMAXSEGMENTSIZE() |
FREEUDFLIB |
F_BLOBASPCHAR(VALUE) |
Win32 |
Принимает ссылку на поле BLOB (столбец или переменная) и возвращает [ его содержимое в виде строки, завершаемой нулем |
Аргументы |
VALUE является ссылкой на столбец или переменную BLOB |
Возвращаемое значение |
Строка, завершаемая нулем |
Замечания |
Используйте эту функцию только для тех BLOB, о которых вы точно знаете, ; что их размер не превышает максимальную длину типа VARCHAR (32 765 байт). Учитывайте увеличенный размер в байтах в BLOB, хранящих многобайтовые символы |
Пример |
SELECT F_BLOBASPCHAR(BLOB_MEMO) AS MEMO_STRING FROM MEMBERSHIP WHERE MEMBER_ID = ; |
Связанные или похожие функции |
См. также STRING2BLOB() |
FREEUDFLIB |
F_BLQBLEFT(VALUE, N) |
Win32 |
Получает ссылку на поле BLOB (столбец или переменная) и возвращает первые n символов |
Аргументы |
VALUE: идентификатор столбца или переменной BLOB. N: максимальное количество возвращаемых символов. Не должно превышать максимальной длины для VARCHAR (32 765 байт) |
Возвращаемое значение |
Завершаемая нулем строка длиной N или менее символов |
Замечания |
Учитывайте увеличенный размер в байтах в BLOB, хранящих многобайтовые символы |
Пример |
SELECT F_BLOBLEFT(BLOB_MEMO, 20) AS MEMO_START FROM MEMBERSHIP WHERE MEMBER_ID = ; |
Связанные или похожие функции |
См. также F_BLOBMID(), F_BLOBRIGHT() |
FREEUDFLIB |
F_BLOBLINE(VALUE, N) |
Win32 |
Получает ссылку на поле BLOB (столбец или переменная) и возвращает строку за номером N |
Аргументы |
VALUE: идентификатор столбца или переменной BLOB. N: номер строки BLOB. Первая строка рассматривается как строка номер 1 |
Возвращаемое значение |
Завершаемая нулем строка |
Замечания |
Используйте эту функцию только для тех BLOB, которые содержат строки, разделенные символами CRLF (возврат каретки, перевод строки). Не используйте ее, если вы не уверены, что строки не превышают максимальную длину для типа VARCHAR (32 765 байт). Учитывайте увеличенный размер в байтах в BLOB, хранящих многобайтовые символы |
Пример |
SELECT F_BLOBLINE(BLOB_MEMO, 20) AS MEMO_LINE20 FROM MEMBERSHIP WHERE MEMBER ID - ....; |
Связанные или похожие функции |
См. также F_BLOBMID(), F_BLOBRIGHT() |
FREEUDFLIB |
F_BLOBMID(VALUE, STARTPOS, N) |
Win32 |
Получает ссылку на поле BLOB (столбец или переменная) и возвращает N символов, начиная с позиции STARTPOS |
Аргументы |
VALUE: идентификатор столбца или переменной BLOB. STARTPOS: позиция первого символа в возвращаемой строке. N: максимальное количество возвращаемых символов. Не должно превышать максимальной длины для VARCHAR (32 765 байт) |
Возвращаемое значение |
Завершаемая нулем строка длиной N или менее символов |
Замечания |
Учитывайте увеличенный размер в байтах в BLOB, хранящих многобайтовые символы |
Пример |
SELECT F_BLOBMID(BLOB_MEMO, 140, 20) AS MEMO_SUBSTRING FROM MEMBERSHIP WHERE MEMBER_ID = . . .; |
Связанные или похожие функции |
См. также F_BLOBRIGHT(), F_BLOBLEFT() |
FREEUDFLIB |
F_BLOBRIGHT(VALUE, N) |
Win32 |
Получает ссылку на поле BLOB (столбец или переменная) и возвращает последние N символов |
Аргументы |
VALUE: идентификатор столбца или переменной BLOB. N: максимальное количество возвращаемых символов. Не должно превышать максимальной длины для VARCHAR (32 765 байт) |
Интервал:
Закладка: