Предположим, что уже установлено необходимое программное обеспечение (Windows 2000, MS Access, IIS) создана база данных в файле c:\inetpub\wwwroot\dhtml\db.mdb с таблицей school_teacher, к которой прописан псевдоним db (об особенностях настройки и установки вышеописанных компонентов смотрите предыдущие разделы статьи).
Приведем текст файла school.asp, реализующий вывод таблицы school_teacher (пример 1).
Пример 1. Вывод содержимого таблицы БД в ASP
<html>
<body>
<%
set Cn = Server.CreateObject("ADODB.Connection")
Cn.Open "DSN=db" ´подключение к БД с псевдонимом db
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM school_teacher", Cn ´выполение SQL-запроса
%>
<table class=borderall>
<tr align=center bgcolor=cccccc><td>№</td><td>ФИО</td><td>Предмет</td></tr>
<%
do until rs.EOF ´цикл по записям запроса
´чтение значения поля id_teacher в переменную id_teacher для текущей записи запроса
id_teacher=rs("id_teacher")
fio=rs("fio")
subject=rs("subject")
´вывод строки текущей записи
%>
<tr><td><%=id_teacher%></td><td><%=fio%></td><td><%=subject%></td></tr>
<%
rs.movenext
loop
rs.Close
Cn.Close
%>
</table>
</body>
</html>
Для работы с БД создается объект Cn типа ADODB.Connection, который соединяется с БД через метод Cn.Open. Для получения данных запроса создается еще один объект rs типа ADODB.Recordset, далее с помощью его метода rs.Open выполняется сам запрос к БД для соединения Cn. С помощью метода rs.EOF можно проверить признак окончания записей для текущего запроса, а с помощью функции rs.movenext можно перейти к следующей записи запроса. Таким образом, в цикле do until считываются и выводятся в таблице все записи запроса, после чего объект запроса и объект соединения с базой закрываются с помощью соответствующего метода Close.
Результат работы программы показан ниже.
№ |
ФИО |
Предмет |
1 |
Беляев Сергей Николаевич |
Программирование |
2 |
Стольникова Ирина Валерьевна |
HTML |
3 |
Голикова Марина Николаевна |
HTML |
4 |
Ликай Елена Павловна |
Программирование |
5 |
Ильиных Елена Николаевна |
Программирование |
6 |
Бокатуев Денис Андреевич |
Web-дизайн |