急!急!!急!!!答完马上就给分!初次使用VB,向各位大虾请教在VB写的DLL中如何访问SQL SERVER数据库,最好能写个简单的样例。谢谢了!!!

解决方案 »

  1.   

    我只会用ADO控件来连接数据库
      

  2.   

    dll写连接SQL和平常写是一样的只不过如果考虑要封装的话,就要重新传参很多钟方法,比如把连接的信息放在注册表或者ini文件中间再读取出来
    连接字符就是ado连接,写dll还是写bas都是一样
      

  3.   

    在建工程prjDll 
    类模块名 clsDataAccessDim Cn As ADODB.Connection
    Public Function OpenCn(Optional ByVal strCn As String) As ADODB.Connection '连接数据库
        If strCn = "" Then
            strCn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=Northwind;Data Source=."
        End If
        Dim Cn As New ADODB.Connection
        Cn.CursorLocation = adUseServer
        Cn.ConnectionString = strCn
        Cn.Open
        Set OpenCn = Cn
       
    End FunctionPublic Function GetResultset(strSQL As String) As ADODB.Recordset '取得记录集
       On errror GoTo Err:
        
        Dim Rs As New ADODB.Recordset
        Set Cn = OpenCn
        
        If Cn.State = adStateClosed Then
            Cn.Open
        End If
           Rs.Open strSQL, Cn, adOpenStatic, adLockReadOnly, adCmdText
        Set GetResultset = Rs
        
       Exit Function
       
       
    Err:
       Set GetResultset = Nothing
        If Cn.State = adStateOpen Then
             Cn.Close
       End If
    End Function生成prjdll在另外的工程窗体form1中
    在工程——》引用 中找到刚才编绎的dll(prjdll)程序就可调用了。
     
    Private Sub Command1_Click()
        Dim d As New prjDll.clsDataAccess
        d.OpenCn '连接数据库
        Print d.GetResultset("select * from customers").Fields(0) '取记录
        End Sub