Руководство пользователя Отмена

Применение ASP-команд для изменения базы данных в Dreamweaver

 

 

Узнайте, как применять ASP-команды в Dreamweaver для изменения базы данных, а также добавления и выполнения хранимой процедуры.

Примечание.

Пользовательский интерфейс в Dreamweaver и более поздних версиях стал проще. В результате этого некоторые функции, описанные в этой статье, могут отсутствовать в Dreamweaver и более поздних версиях. Дополнительные сведения см. в этой статье.

Об объектах команды ASP

Объект команды ASP — это объект сервера, выполняющий некоторую операцию с базой данных. Объект может содержать любой SQL-оператор, включая оператор возврата набора записей или оператор для вставки, обновления или удаления записей из базы данных. Объект команды может изменять структуру базы данных в случае, если SQL-оператор добавляет или удаляет столбец из таблицы. Объект команды можно также использовать для выполнения в базе данных хранимой процедуры.

Объект команды может многократно использоваться в том смысле, что сервер приложений может многократно использовать простую откомпилированную версию объекта для выполнения команды несколько раз. Сделать команду многократно используемой можно с помощью задания свойству «Подготовленный» объекта «Команда» значения true, как это показано в следующем предложении VBScript.

mycommand.Prepared = true
mycommand.Prepared = true
mycommand.Prepared = true

Если известно, что команда будет выполняться несколько раз, наличие простой откомпилированной версии объекта может увеличить эффективность операций с базой данных.

Примечание.

Подготовленные команды поддерживаются не всеми поставщиками баз данных. Если база данных не поддерживает подготовленные команды, она может вернуть ошибку в случае, если свойству задано значение true. База данных может даже проигнорировать запрос на подготовку команды и задать свойство «Подготовленный» значение false.

Объект команды создается сценариями на ASP-странице, но Dreamweaver позволяет создавать объекты команды без написания ASP-кода.

Применение ASP-команд для изменения базы данных

Dreamweaver можно использовать для создания объектов ASP-команд, выполняющих вставку, обновление или удаление записей из базы данных. Назначьте объекту команды SQL-оператор или хранимую процедуру, выполняющую операцию с базой данных.

  1. В Dreamweaver откройте ASP-страницу, на которой выполняется команда.
  2. Откройте панель «Поведение сервера» («Окно» > «Поведение сервера»), нажмите кнопку (+) и выберите пункт «Команда».
  3. Введите имя команды, выберите подключение к базе данных, содержащей записи для редактирования, и выберите операцию редактирования, которую должна выполнять команда: «Вставить», «Обновить» или «Удалить».

    Dreamweaver выполняет SQL-оператор на основе типа выбранной операции. Например, если выбрана операция «Вставить», диалоговое окно выглядит примерно следующим образом:

    Введение ASP-команды
    Введение ASP-команды

  4. Завершение создания SQL-оператора

    Более подробную информацию о создании SQL-операторов для изменения базы данных см. в руководстве по Transact‑SQL.

  5. Определить SQL-переменные можно в области «Переменные». Задайте имя и динамическое значение. Задание типа и размера каждой переменной позволяет предотвратить атаки несанкционированного доступа.

    В следующем примере показан оператор Insert с тремя переменными SQL. Значения этих переменных предоставляются параметрами URL-адреса, передаваемыми на страницу и определенными в столбце «Динамическое значение» в области «Переменные».

    Оператор Insert с тремя переменными SQL
    Оператор Insert с тремя переменными SQL

    Просмотреть значение «Размер» можно на панели «Базы данных» в Dreamweaver. Найдите нужную базу данных на панели «Базы данных» и разверните ее. Затем выберите рабочую таблицу и тоже разверните ее. В таблице указаны размеры полей. Например, ADDRESS (WChar 50). В данном примере размер равен 50. Также можно найти размер в приложении базы данных.

    Примечание.

    Для типов данных «Числовой», «Логический» и «Дата/время» в качестве размера всегда используется -1.

    Для определения значения «Тип» см. нижеприведенную таблицу.

    Тип в базе данных

    Тип в Dreamweaver

    Размер

    Числовой (MS Access, MS SQL Server, MySQL)

    С двойной точностью

    -1

    Логический, «Да»/«Нет» (MS Access, MS SQL Server, MySQL)

    С двойной точностью

    -1

    Дата/время (MS Access, MS SQL Server, MySQL)

    DBTimeStamp

    -1

    Все другие типы текстовых полей, включая типы текстовых данных MySQL char, varchar и longtext

    LongVarChar

    См. таблицу базы данных

    Текст (MS Access) или nvarchar, nchar (MS SQL Server)

    VarWChar

    См. таблицу базы данных

    Memo (MS Access), ntext (MS SQL Server) или поля с поддержкой большого объема текста

    LongVarWChar

    1073741823

    Более подробную информацию о типах и размерах SQL-переменных см. по адресу www.adobe.com/go/4e6b330a.

  6. Закройте диалоговое окно.

    Dreamweaver вставляет в страницу ASP-код, который при выполнении на сервере создает команду вставки, обновления или удаления записей из базы данных.

    По умолчанию код задает свойству «Подготовленный» объекта команды значение true, то есть сервер приложений может многократно использовать простую откомпилированную версию объекта при каждом выполнении команды. Для изменения этой настройки переключитесь в представление кода и измените значение свойства «Подготовленный» на false.

  7. Создайте страницу с HTML-формой, позволяющей пользователям вводить данные записей. Включите в HTML-форму три текстовых поля (txtCity, txtAddress и txtPhone) и кнопку отправки. В форме метод GET применяется для отправки значений текстовых полей в страницу, содержащую команду.

О хранимых процедурах

Хотя для создания страниц, изменяющих базы данных, можно использовать поведения сервера, с этой целью также можно применять такие объекты операций с базами данных, как хранимые процедуры или объекты ASP-команд.

Хранимая процедура представляет собой многократно используемый элемент базы данных, выполняющий некоторую операцию с базой данных. Хранимая процедура содержит SQL-код, способный среди прочего вставлять, обновлять или удалять записи. Хранимые процедуры также могут изменять структуру самой базы данных. Например, хранимые процедуры можно применять для добавления в таблицу столбца или даже для удаления таблиц.

Хранимая процедура может вызывать другие хранимые процедуры, а также принимать параметры ввода и возвращать значения в вызывающую процедуру в форме выходных параметров.

Хранимая процедура является многократно используемой в том смысле, что простую откомпилированную версию процедуры можно использовать для многократного выполнения операции с базой данных. Если известно, что операция с базой данных будет выполняться много раз или одна задача будет выполняться различными приложениями, применение хранимой процедуры для выполнения этой операции повышает эффективность работы базы данных.

Примечание.

Базы данных MySQL и Microsoft Access не поддерживают хранимые процедуры.

Добавление хранимой процедуры (ColdFusion) (CS6)

Хранимую процедуру можно использовать для изменения базы данных. Хранимая процедура представляет собой многократно используемый элемент базы данных, выполняющий некоторую операцию с базой данных.

Перед изменением базы данных при помощи хранимой процедуры убедитесь, что в процедуре содержится SQL-код для некоторого изменения базы данных. Более подробную информацию о создании и размещении хранимых процедур в базе данных см. в документации по базе данных и руководство Transact-SQL.

  1. Откройте в Dreamweaver страницу, на которой выполняется хранимая процедура.
  2. На панели «Привязки» («Окно» > «Привязки») нажмите кнопку (+) и выберите «Хранимая процедура».
  3. Во всплывающем меню «Источник данных» выберите подключение к базе данных, содержащей хранимую процедуру.
  4. Введите имя пользователя и пароль источника данных ColdFusion.
  5. Во всплывающем меню «Процедуры» выберите хранимую процедуру.

    Dreamweaver автоматически задает все параметры.

  6. Если требуется изменить параметр, выберите его и нажмите кнопку «Редактировать»

    Открывается диалоговое окно «Изменить переменную хранимой процедуры». Имя редактируемой переменной отображается в поле «Имя».

    Примечание.

    Для каждого входного параметра хранимой процедуры необходимо задать тестовые значения.

  7. Выполните следующие необходимые изменения.
    • Выберите во всплывающем меню пункт «Направление». В хранимой процедуре могут иметься входные значения, выходные значения или оба типа значений.

    • Выберите во всплывающем меню пункт «Тип SQL». Введите возвращаемую переменную, динамическое значение и тестовое значение.

  8. Если хранимая процедура получает параметр, нажмите кнопку (+) для добавления параметра страницы.
    Примечание.

    Необходимо ввести соответствующие параметры страницы для каждого возвращаемого значения параметра хранимой процедуры. При отсутствии соответствующего возвращаемого значения не добавляйте параметры страницы.

    Для добавления других параметров страницы нажмите кнопку (+).

  9. Для удаления параметра страницы выберите его и нажмите кнопку (–) или нажмите кнопку «Редактировать» для изменения параметра.
  10. Выберите параметр «Возвращает именованный набор записей», затем задайте имя набора записей. Если хранимая процедура возвращает набор записей, нажмите кнопку «Тест» и просмотрите набор записей, возвращаемый хранимой процедурой.

    Dreamweaver выполняет хранимую процедуру и отображает набор записей (при его наличии).

    Примечание.

    Если хранимая процедура возвращает набор записей и получает параметры, для тестирования хранимой процедуры необходимо ввести значение в столбец «Значение по умолчанию» в поле «Переменные».

    Примечание.

    Для формирования различных наборов записей можно использовать различные тестовые значения. Для изменения тестовых значений нажмите кнопку «Редактировать» (в области «Параметр») и измените тестовое значение или нажмите кнопку «Редактировать» в области «Параметры страницы» и измените значение по умолчанию.

  11. Выберите параметр «Возвращает код состояния с именем». Если хранимая процедура возвращает значение кода состояния, введите имя кода состояния. Нажмите кнопку «ОК».

    После закрытия диалогового окна Dreamweaver вставляет в страницу код ColdFusion, вызывающий хранимую в базе данных процедуру при выполнении этого кода на сервере. В свою очередь, хранимая процедура выполняет операцию с базой данных, например вставку записи.

    Если хранимая процедура получает параметры, можно создать страницу, собирающую значения параметров и отправляющую их на страницу с хранимой процедурой. Например, можно создать страницу, использующую для сбора информации от пользователей параметры URL-адреса или HTML-формы.

Выполнение хранимой процедуры (ASP) (CS6)

Для выполнения хранимой процедуры на ASP-страницах к ним необходимо добавить объекты команды. Более подробную информацию об объектах команд см. в разделе Об объектах команды ASP.

  1. Откройте в Dreamweaver страницу, на которой выполняется хранимая процедура.
  2. На панели «Привязки» («Окно» > «Привязки») нажмите кнопку (+) и выберите «Команда (Хранимая процедура)».

    Открывается диалоговое окно «Команда».

  3. Введите имя команды, выберите подключение к базе данных, содержащей хранимую процедуру, затем во всплывающем меню «Тип» выберите пункт «Хранимая процедура».
  4. Разверните ветвь «Хранимые процедуры» в диалоговом окне «Элементы базы данных» и выберите в списке хранимую процедуру, затем нажмите кнопку «Процедура».
  5. Введите необходимые параметры в таблицу «Переменные».

    Для переменной RETURN_VALUE вводить параметры не требуется.

  6. Нажмите кнопку «ОК».

    После закрытия диалогового окна в страницу будет вставлен ASP-код. Когда этот код выполняется на сервере, он создает объект команды, который вызывает хранимую процедуру в базе данных. В свою очередь, хранимая процедура выполняет операцию с базой данных, например вставку записи.

    По умолчанию код задает свойству «Подготовленный» объекта команды значение true, то есть сервер приложений может многократно использовать простую откомпилированную версию объекта при каждом выполнении хранимой процедуры. Если известно, что команда будет выполняться много раз, наличие простой откомпилированной версии объекта может увеличить эффективность операций с базой данных. Если команда будет выполняться один-два раза, использование простого откомпилированного объекта может замедлить веб-приложение, поскольку система берет паузу для компиляции команды. Для изменения этой настройки переключитесь в представление кода и измените значение свойства «Подготовленный» на false.

    Примечание.

    Подготовленные команды поддерживаются не всеми поставщиками баз данных. Если база данных не поддерживает подготовленные команды, при выполнении страницы может открыться сообщение об ошибке. Переключитесь в представление кода и измените значение свойства «Подготовленный» на false.

    Если хранимая процедура получает параметры, можно создать страницу, собирающую значения параметров и отправляющую их на страницу с хранимой процедурой. Например, можно создать страницу, использующую для сбора информации от пользователей параметры URL-адреса или HTML-формы.

Получайте помощь быстрее и проще

Новый пользователь?