【问题标题】:Accessing SQL Server with VB6使用 VB6 访问 SQL Server
【发布时间】:2011-03-07 05:58:38
【问题描述】:

我正在尝试在 VB6 中显示存储在 SQL Server 中的数据。

ALTER PROCEDURE [dbo].[ledger] 
    -- Add the parameters for the stored procedure here

AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    -- Insert statements for procedure here
select a.StockMaster,sum1,sum2,(sum2-sum1) as TQty from
(SELECT tblStockMaster.SmName AS StockMaster, SUM(isnull(tblReceivingD.TotalQuantity,0)) AS sum2
FROM tblStockMaster LEFT JOIN tblReceivingD ON tblReceivingD.StockControlR=tblStockMaster.SmName
GROUP BY tblStockMaster.SmName) a ,
(SELECT tblStockMaster.SmName AS StockMaster, SUM(isnull(tblPurchaseOrderD.TotalQuantity,0)) AS sum1
FROM tblStockMaster LEFT JOIN tblPurchaseOrderD ON tblPurchaseOrderD.StockControl=tblStockMaster.SmName GROUP BY tblStockMaster.SmName) b
where a.StockMaster =b.StockMaster 

在 VB6 中找不到 SQL。如何连接到 SQL 数据库?代码如下:

Private Sub Form_Load()
SetGrid
recdisplay "ledger"
End Sub
Function SetGrid()


With MSFlexGrid1
    .Rows = 1

    .ColWidth(0) = 0
    .ColWidth(1) = 4650: .TextMatrix(0, 1) = "Item Name"
    .ColWidth(2) = 3565: .TextMatrix(0, 2) = "Total Quantity"
    End With
End Function



Function recdisplay(sql As Variant)

错误提示:

在与请求的名称或序号对应的集合中找不到项目

Dim R As Integer
Set rs = New ADODB.Recordset
rs.Open sql, conn, adOpenStatic, adLockReadOnly

With MSFlexGrid1
.Rows = 1

    While Not rs.EOF
     .AddItem rs!SMControl & vbTab & rs!SmName & vbTab & rs!tqty

     rs.MoveNext
     Wend

End With
End Function

【问题讨论】:

  • 在您的“With MSFlexGrid1”行上设置一个断点,转到您的即时窗口并输入:rs.Save "c:\rs.xml",adPersistXML ...这将写入您的记录集到 xml,以便您可以在代码之外检查它
  • 感谢先生的关心!感谢您的帮助

标签: sql-server vb6


【解决方案1】:

您存储的过程返回以下列:

  • StockMaster
  • sum1
  • sum2
  • TQty

您的 VB6 代码正在尝试在 rs Recordset 对象中使用以下名称:

  • SMControl
  • qty

所以我认为错误是说 SMControl 不是 Recordset 对象中 Field 的有效名称。我猜您需要在您的 VB6 代码中将 SMControl 更改为 StockMaster

【讨论】:

  • 你需要接受正确的答案,因为那些不给予信任的人最终将永远得不到进一步的帮助。
猜你喜欢
  • 2016-03-24
  • 1970-01-01
  • 2011-01-30
  • 1970-01-01
  • 2011-08-02
  • 1970-01-01
  • 1970-01-01
  • 2010-11-21
  • 1970-01-01
相关资源
最近更新 更多