女士们先生们,
到目前为止,我已经成功地以编程方式从 MySQL 数据库中提取记录,以从单个表中创建水晶报表。使用下面的代码,我正在尝试连接两个表并在报告中显示它们的匹配记录:
Try
Dim myConnectionString As String = "Server=" & FormLogin.ComboBoxServerIP.SelectedItem & ";Port=3306;Uid=parts;Password=parts;Database=accounting;"
Dim dbConn As New MySqlConnection(myConnectionString)
Dim dbQuery As String = "SELECT * " & _
"FROM cc_master a JOIN customer b ON b.accountNumber = a.customer_accountNumber;"
Dim dbAdapter As New MySqlDataAdapter(dbQuery, dbConn)
Dim dbTable As New DataTable
dbAdapter.Fill(dbTable)
Dim report As New rptCardListAll
report.SetDataSource(dbTable)
CrystalReportViewer1.ReportSource = report
CrystalReportViewer1.Zoom(1)
Catch ex As Exception
'MsgBox(ex.Message)
End Try
我现在遇到的问题是,当报告在运行时运行时,除了我从 CUSTOMER 表中提取的一个字段之外,所有数据库记录都填充在报告中。下面是一个屏幕截图。注意空白的客户名称 - 这不应该是空白的,因为我知道事实上该字段中的每条记录都有数据。
当我使用 MySQL Workbench 直接在数据库上运行查询时,查询工作正常,所以我无法弄清楚为什么报告不会提取请求的信息。任何帮助将不胜感激,谢谢。
编辑:在包含缺失字段(nameCOMPANY)的调试期间显示 DataSet Visualizer 的屏幕截图