写了一个用来访问数据库的com,希望返回值是查询所得的一系列数据,但com的返回值只允许很少的几种类型阿!怎么办呢?

解决方案 »

  1.   

    返回一个dispatch接口,可以将recordset对象返回到客户端。recordset对象需要设置游标类型为客户端游标,返回以前要调用AddRef,避免recordset对象被释放掉。
      

  2.   

    可以阿,最简单的是一个比如用","分隔的字符串:)
    当然,现在时髦的做法是用xml
      

  3.   

    to ultraboy
    可以说具体点吗
      

  4.   

    还要怎么说啊?就是这样啊?
    1。打开记录集
    2。设置游标类型
    3。AddRef
    4。返回记录集的diptch接口
      

  5.   

    可以给我一个例子吗?最好是用Delphi写的,其它的也行。求求你帮帮忙。
      

  6.   

    给你一个VB数据层操作的例子:
    Public Function QueryOrderItem(ByVal strsql As String) As ADODB.Recordset
        On Error GoTo 0
        Dim objContext As ObjectContext
        Set objContext = GetObjectContext()
        Set QueryOrderItem = RunSQLReturnRS(strsql, "")
        If Err.Number <> 0 Then
            objContext.SetAbort
            Set objContext = Nothing
        End If
        objContext.SetComplete
        Set objContext = Nothing
    End Function
      

  7.   

    DELPHI我不会,不过我觉得我说的你直接翻译成代码完全可以了啊?我也是看书的,代码我自己没写过。