【发布时间】:2015-01-08 10:39:35
【问题描述】:
我将后端用作 MS Access 2013,当我执行函数时,它在消息框中返回 0,但我在 access 2013 中以 sql 模式执行相同的查询,它返回多行。问题是此函数返回 0 的原因数据集表中的行。它应该返回一些行
表格
账单(bill_id,m_id,dated,ownername,oldvalue,newvalue,units,oth,rcharges,billamount)
米(m_id,m_type,ownername,flatno,designation,qualification,department)
Private Sub frmViewStatementReport_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim Billrpt As New RptBillStatement
Billrpt.Load(Application.StartupPath & "\RptBillStatement.rpt")
Try
Dim qry As String
' I have Tried the above both queries but returns 0 rows in table(0).
qry = "SELECT bills.ownername as Name, meters.designation as des, meters.department as depart, bills.billAmount as amount FROM bills LEFT JOIN meters ON meters.m_id =bills.m_id WHERE bills.dated like '*-jan-*'"
'qry = "SELECT bt.bill_id,bt.ownername as Name, mt.designation as designation, mt.department as department,bt.billAmount as billAmount FROM bills AS bt INNER JOIN meters AS mt ON bt.m_id = mt.m_id WHERE bt.dated like '*-jan-*'"
Using conn = New OleDbConnection(ConString)
Using daa As OleDbDataAdapter = New OleDbDataAdapter(qry, conn)
Using dss As DataSet = New DataSet
conn.Open()
daa.Fill(dss, "Bills")
Dim dt As New DataTable
dt = ds.Tables(0)
Billrpt.SetDataSource(ds.Tables(0))
Me.CrystalReportViewer1.Refresh()
Me.CrystalReportViewer1.ReportSource =Billrpt
MsgBox(dss.Tables(0).Rows.Count.ToString)
conn.Close()
End Using
End Using
End Using
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
【问题讨论】:
-
通配符几乎总是在 MS Access 之外。它仅 % 在 MS Access 查询 (DAO) 中运行
-
感谢 Fionnuala 为我的问题提供解决方案。
-
当然我的意思是它只是 * 在 MS Access 查询 (DAO) 中运行
标签: sql vb.net visual-studio-2010 ms-access-2013 crystal-reports-2010