Crystal报告未能打开连接
问题描述:
嘿,大家好。 所以,有ac#窗体窗体,使用水晶报告和sql express后端和一个水晶报告,从远程sql服务器08拉。当试图从本地数据库拉,我得到'未能打开连接',但报告从远程连接正常加载。Crystal报告未能打开连接
在开发机器上一切正常,它在虚拟机上测试失败。虚拟数据库是使用开发数据库的(当前)备份创建的。这里是连接的代码...
private void frm_cr_Visit_Load(object sender, EventArgs e)
{
this.Text = "Visit Report - Version:" + Application.ProductVersion;
Cursor.Current = Cursors.WaitCursor;
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(@"C:\Data\MRE\crVisitBySubVisitID.rpt");
cryRpt.SetDatabaseLogon("login", "password", @"localserver\sqlexpress", "DBname");
cryRpt.SetParameterValue("@VisitID", intVisitID);
cryRpt.SetParameterValue("@FullName", GlobalVariables.GlobalFullName);
crv.ReportSource = cryRpt;
crv.Refresh();
Cursor.Current = Cursors.Default;
}
该程序中的所有其他数据库函数工作。是什么导致了问题,我该如何解决?
谢谢!
dave k
答
发现我的问题,它必须与SQL服务器设置为只有Windows身份验证,而不是和SQL登录身份验证。
doh!
答
如果每个其他函数都工作并且数据库细节相同,请检查用户的权限,因为这是连接问题的常见原因(假设认证显然返回该错误),还请检查url为(没有关于服务器名称的进一步信息)假定“localserver”可能应该是“localhost”,显然如果HOSTS文件或服务器名称被设置为使得“localserver”工作不理会。
感谢您的回复,抱歉,忘记关闭此。最后找到我的答案与更多的研究...在我正在测试这个虚拟机上,SQL Server 08 Express的安装是一个无提示安装,并默认只为Windows身份验证。访问本地数据库的程序使用SQL登录。 – 2011-03-14 18:26:21