Занесение и модификация данных с использованием тегов DBINSERT и DBUPDATE

Занесение и модификация данных с использованием тегов DBINSERT и DBUPDATE. При использовании тегов DBINSERT и DBUPDATE для занесения или модификации данных, параметры должны быть переданы в шаблон обязательно из формы, используя метод POST. Для создания новой записи в базе данных используется тег DBINSERT, а для модификации существующей записи используется тег DBUPDATE. При использовании этих тегов необходимо определить атрибуты DATASOURCE и TABLENAME. DATASOURCE это название источника данных ODBC, содержащего редактируемую таблицу, а TABLENAME - имя этой таблицы. Например, если источник данных ODBC называется Person DB , а таблица, в которой требуется создать запись - Person, то тег DBINSERT в шаблоне будет иметь следующий вид DBINSERT DATASOURCE Person DB TABLENAME Person Параметры, переданные в шаблон должны совпадать с именами полей таблицы, в которой создается модифицируется запись. В том случае, если не все передаваемые параметры должны участвовать в этой процедуре, используется атрибут FORMFIELDS, в котором через запятую перечисляются имена полей таблицы, для которых должны существовать одноименные параметры.

Особо следует отметить, что для того, чтобы использовать тег DBUPDATE для модификации записи, в таблице должен быть определен первичный ключ, а для всех полей включенных в первичный ключ из обрабатываемой HTML-формы обязательно должны быть переданы соответствующие параметры. Теги DBINSERT и DBUPDATE могут иметь также еще два необязательных атрибута TABLEOWNER - для тех источников данных которые поддерживают права собственности на таблицы например, SQL Server, Oracle и др этот атрибут можно использовать, чтобы указать собственника таблицы.

TABLEQUALIFIER - для различных источников данных этот атрибут может иметь разный смысл.

Так, для SQL Server и Oracle - это имя базы данных, в которой содержится таблица, а для Intersolv dBase - это директория в которой расположены DBF файлы.

Пример Пусть определена HTML - форма для ввода данных HTML HEAD TITLE Пример ввода данных для создания записи TITLE HEAD BODY FORM ACTION cgi-shl dbml.exe?Template example.dbm METHOD POST ФИО INPUT TYPE Text NAME FullName Телефон INPUT TYPE Text NAME Phone Дата рождения INPUT TYPE Text NAME Birthday FORM BODY HTML Следующий шаблон, example.dbm, которому будут переданы данные из формы создает запись в таблице и выдает подтверждающее сообщение DBINSERT DATASOURCE Person DB TableName Persons FORMFIELDS FullName,Phone,Birthday HTML HEAD TITLE Подтверждение TITLE HEAD BODY H1 Запись создана! H1 BODY HTML 5.7