同样的代码连接SqlServer数据库报表显示正常,连接access数据库代码支行不出错,报表显示不出来!哪位大神有解决方法。

desnoc 2020-06-08 09:51:37

TableLogOnInfo logOnInfo = new TableLogOnInfo();
//这里必须事先申明一个ReportDocument对象 Report,同时加载数据报表

//建立安全信息
//受密码保护的 Microsoft Access 和 Paradox 等 PC 数据库也使用该方法,但 LogOnInfo.ServerName //和 LogOnInfo.DatabaseName 要保留为空
logOnInfo.ConnectionInfo.ServerName = "";
logOnInfo.ConnectionInfo.DatabaseName = "";
logOnInfo.ConnectionInfo.UserID = "";
logOnInfo.ConnectionInfo.Password = "";

string path = Server.MapPath(@"\CrystalReport2.rpt");

myReport.Load(path);//修改为你自己的正确位置
myReport.Database.Tables[0].ApplyLogOnInfo(logOnInfo);



dv = sinBI.QueryByCondition(" empno='" + txtvalue.Text + "'");
if (dv != null && dv.Count > 0)
{
myReport.SetDataSource(dv.Table);

//建立.rpt文件与CryStalReportviewer文件之间的连接

crcode.ReportSource = myReport;
crcode.DataBind();
myReport.Refresh();

}
...全文
198 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
三楼の郎 2020-06-11
  • 打赏
  • 举报
回复
SQL Server和Access里的SQL语法是有区别的,比如Like的通配符SQL Server里面是%,Access里面是*,所以你这个还是把SQL 语句打印出来放到Access里面执行下看看吧
  • 打赏
  • 举报
回复
多给提问者建议或直接的解决方案, 如果他目前是这么用,你让他重构啊?
  • 打赏
  • 举报
回复
微软 .net 大致是在15年前就正式发布声明,不支持 Jet 数据库,而用桌面引擎 Sql Server Compact 来取代 Jet 数据库了。现在设计产品,建议你使用 SQL Server Compact,或者 SQLite。至于说“Paradox”其实更是1990年代才流行的产品。现在学习和使用那些容易走偏。
  • 打赏
  • 举报
回复
实验,把Provider加上试试 Provider=Microsoft.Jet.OLEDB.4.0

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧