ASP 3.0 Объявление констант ADO без включения, в том числе ADOVBS.inc
Я написал простой скрипт для обработки форм с использованием ASP3.0/VBScript и хотел бы добавить введенные данные (через Интернет) в базу данных Access, расположенную на моем сервере. Я использую метод OLEDB для подключения так:
Cst = "PROVIDER=Microsoft.Jet.OLEDB.4.0;" & _
"DATA SOURCE=" & Server.MapPath("DataBase.mdb")
Dim Conn
Set Conn = CreateObject("ADODB.Connection")
Conn.Mode = 3
Conn.Open Cst
Blah Blah Blah...
В настоящее время у меня есть файл с именем ADOVBS.inc, включенный вверху, но я бы хотел отказаться от него, потому что считаю его неэффективным и расточительным. Я хотел бы определить константы так, как они мне нужны, но я не знаю как. Какие константы ADO мне нужно определить и где? Книга, которую я использую, в основном гласит: "Забудьте об этом фунте, включите эти 400 или около того бугеров и не задавайте глупых вопросов!"
Любые конкретные примеры / помощь будет принята с благодарностью.
Спасибо,
3 ответа
У вас есть несколько вариантов на выбор. Вы можете ссылаться на библиотеку метаданных на своей странице (или в файле global.asa) с помощью
<!--
METADATA
TYPE="TypeLib"
NAME="Microsoft ActiveX Data Objects 2.5 Library"
UUID="{00000205-0000-0010-8000-00AA006D2EA4}"
VERSION="2.5"
-->
или же
Вы можете просто скопировать несколько констант из файла adovbs на свою страницу, чтобы удовлетворить ваши потребности. Например
Const adCmdText = 1 'Evaluate as a textual definition
Const adCmdStoredProc = 4 'Evaluate as a stored procedure
Конечно, ответ таков: "Забудьте об этом фунте, включите эти 400 или около того бугеров и не задавайте глупых вопросов!":)
Но так как вы настаиваете:
Лучший способ - это объединить все функции доступа к данным в одном.ASP
Давайте назовем это dbHelper.asp
Затем поместите туда все функции БД, например:
''// run a query and returns a disconnected recordset
Function RunSQLReturnRS(sqlstmt, params())
On Error Resume next
''//Create the ADO objects
Dim rs , cmd
Set rs = server.createobject("ADODB.Recordset")
Set cmd = server.createobject("ADODB.Command")
''// Init the ADO objects & the stored proc parameters
cmd.ActiveConnection = GetConnectionString()
cmd.CommandText = sqlstmt
cmd.CommandType = adCmdText
collectParams cmd, params
''//Execute the query for readonly
rs.CursorLocation = adUseClient
rs.Open cmd, , adOpenForwardOnly, adLockReadOnly
If err.number > 0 then
BuildErrorMessage()
exit function
end if
''//Disconnect the recordset
Set cmd.ActiveConnection = Nothing
Set cmd = Nothing
Set rs.ActiveConnection = Nothing
''//Return the resultant recordset
Set RunSQLReturnRS = rs
End Function
В этот момент вы знаете, что все ваши постоянные константы находятся в этом файле, и вы можете начать заменять их по своему желанию.
Соответствующий список констант можно найти здесь: http://www.4guysfromrolla.com/ASPScripts/PrintPage.asp?REF=%2Fwebtech%2Ffaq%2FBeginner%2Ffaq7.shtml
Я скопирую это и здесь:
'---- CursorTypeEnum Values ----
Const adOpenForwardOnly = 0
Const adOpenKeyset = 1
Const adOpenDynamic = 2
Const adOpenStatic = 3
'---- CursorOptionEnum Values ----
Const adHoldRecords = &H00000100
Const adMovePrevious = &H00000200
Const adAddNew = &H01000400
Const adDelete = &H01000800
Const adUpdate = &H01008000
Const adBookmark = &H00002000
Const adApproxPosition = &H00004000
Const adUpdateBatch = &H00010000
Const adResync = &H00020000
Должно быть достаточно для вставки / выбора / обновления записей в базе данных.