我使用ASP3.0 / VBScript编写了一个简单的表单处理程序脚本,并希望将输入的数据(通过Web)添加到位于我服务器上的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左右的鼻屎,不要问愚蠢的问题!”
非常感谢任何具体的例子/帮助。
谢谢,
答案 0 :(得分:9)
你有几个选择可供选择。您可以使用
在页面中(或在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
答案 1 :(得分:0)
当然答案是“忘掉那个 - 英镑包括那些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
此时,您知道所有ado常量都在此文件中,您可以根据需要开始替换它们。
答案 2 :(得分:-1)
可以在此处找到相关的常量列表: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
足以在数据库中插入/选择/更新记录。