日期:2014-05-16  浏览次数:20980 次

asp 数据库连接问题
本帖最后由 jackai8493 于 2013-03-06 18:05:44 编辑
这两天弄到一个项目 是我们同学给我的 说能运行 让我放到我的服务器里试试 

但是 总是出现 数据库连接错误

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005' 

 [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 

D:\_DRAMA\NEWCHAMELEON\_HTML\../_Common/Lib/DBHelper.asp, 行 20 

贴上数据库连接类

<%
    Class clsDBHelper
Private DefaultConnString
Private DefaultConnection

private sub Class_Initialize()
'DefaultConnString = 
DefaultConnString = Application("DBConnString") 
Set DefaultConnection = Nothing
End Sub


    Public Function ExecSPReturnRS(spName, params, connectionString)
      If IsObject(connectionString) Then
        If connectionString is Nothing Then
          If DefaultConnection is Nothing Then
            Set DefaultConnection = CreateObject("ADODB.Connection")
            DefaultConnection.Open DefaultConnString       
          End If      
          Set connectionString = DefaultConnection
        End If
      End If
    Set rs = CreateObject("ADODB.RecordSet")
    Set cmd = CreateObject("ADODB.Command")
        
    cmd.ActiveConnection = connectionString
    cmd.CommandText = spName
    cmd.CommandType = adCmdStoredProc
    Set cmd = collectParams(cmd, params)
    'cmd.Parameters.Refresh

    rs.CursorLocation = adUseClient
    rs.Open cmd, ,adOpenStatic, adLockReadOnly
    
    For i = 0 To cmd.Parameters.Count - 1   
      If cmd.Parameters(i).Direction = adParamOutput OR cmd.Parameters(i).Direction = adParamInputOutput OR cmd.Parameters(i).Direction = adParamReturnValue Then
        If IsObject(params) Then     
          If params is Nothing Then
            Exit For         
          End If       
        Else
          params(i)(4) = cmd.Parameters(i).Value
        End If
      En