46251 (Использование пакета Cold Fusion для MS Windows при построении WWW - интерфейсов к базам данных), страница 2
Описание файла
Документ из архива "Использование пакета Cold Fusion для MS Windows при построении WWW - интерфейсов к базам данных", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "46251"
Текст 2 страницы из документа "46251"
Для динамической настройки SQL - выражения можно использовать параметры, переданные в шаблон. Это могут быть параметры, переданные из формы, URL, а также переменные CGI. Параметры, используемые внутри SQL - выражения, должны быть обрамлены символом "#" (например #Name#). При обработке запроса Cold Fusion ищет параметр с таким именем среди параметров, полученных из формы, в URL или среди переменных CGI. При нахождении подходящего параметра его значение подставляется вместо соответствующей ссылки на параметр.
Примеры использования параметров в SQL -выражении
Пример 1
Предположим что обрабатывается URL
"/cgi-shl/dbml.exe?Template=prs.dbm&Id=22",
а атрибут SQL в DBQUERY имеет вид
SQL="select * from Persons where Id = #Id#",
тогда в базу данных будет передано следующее SQL - выражение:
select * from Persons where Id = 22 .
Пример 2
Предположим, что в шаблон передан параметр FirstLetters и нужно найти в таблице Persons записи, в которых первые буквы в поле FullName совпадают со значением этого параметра. Значение атрибута SQL в этом случае будет следующим:
SQL="select * from Persons
where FullName like '#FirstLetters#%'"
Следует обратить внимание на то, что маска, состоящая из параметра и символа '%', в отличие от предыдущего примера, обрамлена одинарными кавычками. Это связано с тем, что поле Id из примера 1 имеет числовой тип, а поле FullName - текстовый тип (синтаксис SQL требует, чтобы текстовые значения всегда были обрамлены одинарными кавычками).
Для того чтобы задать маску, в примере использовался символ '%', который в SQL - запросах соответствует произвольной последовательности символов. Также для определения маски может использоваться символ '_' (подчерк), соответствующий одному произвольному символу.
5.8 Использование результатов запроса для динамического создания HTML - документа
Для вывода данных возвращаемых в результате выполнения запроса определенного в DBQUERY применяется тег DBOUTPUT. Внутри этого тега, связанного с конкретным запросом, может находиться обычный текст, теги HTML, ссылки на поля определенные в запросе. При обработке шаблона, содержимое тега DBOUTPUT отправляется клиенту для каждой записи, возвращаемой в результате выполнения запроса, с подстановкой соответствующих значений параметров и полей.
Тег DBOUTPUT имеет следующий синтаксис:
Текст, теги HTML,
ссылки на поля и параметры (т.е. #Name#)
Атрибут QUERY применяется для указания имени запроса DBQUERY, результат выполнения которого будет использоваться, а атрибут MAXROWS определяет максимальное количество записей этого запроса, которые будут переданы для вывода в тег DBOUTPUT.
Пример
Для вывода результата выполнения запроса с именем 'AllPersons', отображая имя персоны и телефон, и разделяя записи горизонтальной линией, может использоваться следующая конструкция:
#FullName# (Телефон: #Phone# )
Результат обработки этого тега будет иметь вид:
Иванов Иван Иванович (Телефон: 222-22-22 )
Петров Петр Петрович (Телефон: 444-44-44 )
5.9 Вывод результата выполнения запроса в виде таблицы
Теги DBTABLE и DBCOL всегда употребляются вместе для отображения результата выполнения запроса в виде таблицы.
Атрибуты тега DBTABLE:
| |
QUERY | - имя DBQUERY, для которого нужно отобразить данные; |
MAXROWS | - максимальное количество записей, которое может быть отображено в таблице; |
COLSPACING | - количество пробелов, которые будут вставлены между колонками (по умолчанию 2); |
HEADERLINES | - количество строк, которые будут отведены для заголовка (по умолчанию 2); |
HTMLTABLE | - при наличие этого тега результат запроса будет отображен в виде HTML - таблицы, в противном случае будет использован тег HTML . |
BORDER | - используетя только вместе с атрибутом HTMLTABLE для отображения рамки в таблице. |
Атрибуты тега DBTABLE:
| |
HEADER | - текст, который будет выводиться как заголовок колонки; |
WIDTH | - ширина колонки в символах (по умолчанию 20); |
ALIGN | -выравнивание содержимого колонки (LEFT, RIGHT и CENTER); |
TEXT | -заключенный в кавычки текст, определяющий содержимое колонки, в котором могут находиться те же теги, ссылки на параметры и др., что и в теге DBOUTPUT. |
Приведем пример использования тегов DBTABLE и DBCOL:
5.10 Дополнительные замечания по созданию DBML - шаблонов
-
В шаблонах DBML, для комментариев, используется три тире (