Рекомендуется: в ASP он реализует экспорт данных из базы данных DBF в таблицу SQL Описание: Структура базы данных DBF должна соответствовать таблице SQL. Ниже приведено эталонное содержимое: <% dim conndbf_dbf, driver_dbf, sourcetype_dbf, dbpath_dbf dim conn_
8.4.3 Создание набора записейОчень легко создать набор записей, который достигается путем вызова открытого метода объекта записи:
Recordset.open [source], [ActiveConnection], [cursortype], [locktype], [опции]
Параметры и описания показаны в таблице 8-3:
Таблица 8-3 Параметры и описания открытого метода
параметр
иллюстрировать
Источник
Источник данных. Это может быть имя таблицы в базе данных, сохраненный запрос или процедура, строка SQL, командный объект или другой командный объект, подходящий для поставщика
ActiveConnection
Соединение, используемое набором записей. Это может быть строка подключения или открытый объект подключения
Cursortype
Тип используемого курсора. Должен быть один из определенных типов курсора, значение по умолчанию является Adforwardonly
Locktype
Используется тип блокировки. Должен быть один из определенных типов блокировки, значение по умолчанию является adlockreadonly
Параметры
Расскажите поставщику, каково содержание параметра источника, например, таблицы, текстовые строки и т. Д.
Например, чтобы открыть набор записей в таблице авторов в пабах базы данных:
Dim Rsauthors
Установить rsauthors = server.createObject (adodb.recordset)
rsauthors.open авторы, Strconn
'Сделай что -нибудь здесь
rsauthors.close
Установить rsauthors = ничего
Обратите внимание, что есть несколько параметров, которые не указаны. Фактически, все параметры являются необязательными, и вы можете установить соответствующие значения свойств для установленного записи перед их открытием:
Dim Rsauthors
Установить rsauthors = server.createObject (adodb.recordset)
С rsauthors
.Source = авторы
.ActiveConnection = strConn
.Cursortype = adposenForwardonly
.Locktype = adlockreadonly
.Открыть
Закончить с
'Сделай что -нибудь здесь
rsauthors.close
Установить rsauthors = ничего
Как только набор записей будет открыт, текущий указатель автоматически расположен на первой записи. Если в наборе записей нет записей, атрибуты EOF и BOF верны:
rsauthors.open авторы, Strconn
Если rsauthors.bof и rsauthors.eof тогда
'Запись пуст
Конец, если
1. Параметр параметров
Параметр параметров метода Open позволяет указать содержимое текста команд. Это может быть одна из следующих констант CommandTyPeenum:
ADCMDTEXT: текстовые команды, такие как строки SQL.
adcmdtable: имя таблицы.
AdcmdStoredProc: хранящаяся процедура имя.
ADCMDFILE: Имя файла сохраненного набора записей.
adcmdtabledIrect: имя таблицы.
Adcmdurlbind: URL -адрес.
Разница между adcmdtable и adcmdtabledirect очень мала. Если вы хотите использовать все столбцы в таблице, использование AdCmdTableDIrect сделает выполнение быстрее, потому что ADO выполняет некоторые внутренние оптимизации.
Если тип команды не указан, ADO должен рассчитывать тип выполненной команды, что приведет к дополнительным накладным расходам.
Здесь есть еще два варианта: AdcmdunSpecified означает, что указанный тип не существует; adcmdunknow означает, что тип команды неизвестен. Они не могут быть использованы в целом.
Дополнительные варианты
Параметр параметров может быть любой из вышеперечисленных постоянных, но также можно добавить следующие константы executeOptionEnum:
adasyncexcute: выполнять команды асинхронно.
Adasyncfetch: После получения начального набора строк получите оставшиеся строки асинхронно.
Adasyncfetchblocking: за исключением получения записей и не предотвращения запуска команды, другие похожи на Adasyncfetch.
AdexeChtenoreCords: команда возвращает никаких записей.
Асинхронная обработка означает, что операции выполняются в фоновом режиме, вы можете запустить команды, а затем продолжить другую работу, не ожидая их завершения (синхронная операция). Это особенно удобно при создании пользовательского интерфейса, потому что его можно вернуть из выполнения команды, чтобы отобразить некоторый контент для пользователя, пока сбор данных все еще находится в фоновом режиме. Это не очень полезно для программистов ASP при возвращении Recordsets, потому что язык сценариев не поддерживает события ADO, поэтому неизвестно, когда набор записей завершил сдвиг заполнения. При обработке обновления, удаления или вставки команд данных и не возврата набора записей, можно использовать асинхронные операции, то есть только в случае заботы о результатах.
С другой стороны, опция AdexeCutenoreCords очень полезна. Он говорит Ado выполнять команды, которые не возвращают никаких данных. Следовательно, нет необходимости создавать набор записей (возможно, в короткие сроки). Это ускоряет работу операций запроса для обновлений или дополнений данных.
Чтобы добавить один из этих параметров, вы можете использовать или символ (эквивалентный знаку плюс)
adcmdStoredProc или AdexeCutenoreCords
adcmdstoreproc adexecutenorecords
В следующей главе вы увидите более подробное введение в связанный контент, так как это будет более полезно при работе с командами (а не наборами записей).
2. Перейдите в наборе записей
Как только набор записей открывается, часто необходимо пройти каждую запись. Это требует использования атрибута EOF. Когда достигнут конец набора записей, EOF становится правдой, потому что цикл может быть создан так:
rsauthors.open авторы, Strconn
В то время как не rsauthors.eof
Response.write rsauthors (au_lname :) & & _
rsauthors (au_fname) и <br>
rsauthors.movenext
Венд
Приведенный выше пример петлей до тех пор, пока атрибут EOF не станет верным перед выходом. Метод Movenext используется для перемещения к следующей записи.
Если набор записей допускает обратное движение, вы можете использовать метод движения. В этом случае значение атрибута BOF должно быть обнаружено в цикле. Существуют также методы перемещения и перемещения, которые переходят к первым и последним записям соответственно:
rsauthors.open авторы, strconn, aspideendynamic
'Теперь на первой записи
rsauthors.movelast
'Теперь на последней записи
rsauthors.moveprevious
rsauthors.moveprevious
'Теперь три ряда с конца записей
rsauthors.movefirst
'Вернувшись снова
3. Используйте коллекции полей
Коллекция Fields содержит объекты Fields для каждого поля (столбца) в наборе записей. Коллекция Fields - это сборник Recordsets по умолчанию, поэтому она может быть опущена при доступе к полям, как и в некоторое время ... пример выше. Следовательно, есть несколько способов получить доступ к полям:
rsauthors.fields (au_lname) .value
rsauthors (au_lname)
rsauthors (1)
rsauthors.fields (1)
Вы можете использовать имя поля или использовать его биты в коллекции
Поделиться: ASP реализует отправку уведомлений по электронной почте при отправке форм в базу данных Ниже приведено цитируемое содержимое: <% dim objcdomail set objcdomail = server.createobject (cdonts.newmail) objcdomail.from = xxx@h