Обучение использованию хранимых процедур (Stored Процедура) — один из необходимых курсов для ASP-программистов. Все большие базы данных поддерживают хранимые процедуры, такие как Oracle, MS SQL и т. д. (но MS Access этого не поддерживает. Однако в Access можно использовать параметризованные запросы).
Использование хранимых процедур дает множество преимуществ. Они позволяют инкапсулировать сложную логику данных и полностью реализовать преимущества больших баз данных. Мы знаем, что ASP не подходит для сложных операций с данными, а доступ к базе данных через OLD DB потребляет системные ресурсы, поскольку данные необходимо передавать между ASP и базой данных. Фактически, если база данных играет лишь роль хранилища данных, то ее функции далеко не используются.
Информацию о том, как создать хранимую процедуру, см. в соответствующей документации MS SQL.
В этой статье рассказывается, как в ASP используются хранимые процедуры.
Простой оператор SQL:
выберите идентификатор, имя, изображение, время, обязанности от места работы
Мы можем создать хранимую процедуру:
СОЗДАТЬ ПРОЦЕДУРУ sp_employ
КАК
выберите идентификатор, имя, изображение, время, обязанности от места работы
Идти
И оператор SQL:
выберите ID, Имя, Изображение, Время, Обязанности с места работы, где ID = 10230
Соответствующая хранимая процедура: (замените существующую хранимую процедуру на Alter)
ИЗМЕНЕНИЕ ПРОЦЕДУРЫ sp_employ
@inID целое число
КАК
выберите ID, Имя, Изображение, Время, Обязанности из списка сотрудников, где ID=@inID
Идти
Давайте сравним ситуацию с SQL и хранимыми процедурами в ASP. Во-первых, давайте посмотрим на прямое выполнение SQL:
<%
дим Конн, стрSQL, rs
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=webData;uid=пользователь;пароль=пароль"
strSQL = "выберите идентификатор, имя, изображение, время, обязанности"
Установите rs = Conn.Execute(strSQL)
%>
Давайте посмотрим, как выполнить хранимую процедуру:
<%
дим Конн, стрSQL, rs
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=webData;uid=user;pwd=password" 'установить соединение
стрSQL = "sp_employ"
Установите rs = Conn.Execute(strSQL)
%>
Выполнение хранимой процедуры с параметрами очень похоже:
<%
dim Conn, strSQL, rs, myInt
моеИнт = 1
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=webData;uid=пользователь;пароль=пароль"
strSQL = "sp_myStoredProcedure" и myInt
Установите rs = Conn.Execute(strSQL)
%>
Вы можете подумать, что использовать хранимые процедуры в ASP так просто. верно! Это так просто.