2014-02-26 135 views
0

我试图连接到2005年的sql服务器,并从它的asp经典拉动信息。我已经创建了一个Java应用程序,并且能够使用这些变量从它获取信息。asp经典sql server 2005无法连接

//SQL Server Values 
String userName = "sa"; 
String password = "Passw0rd"; 
String url = "jdbc:sqlserver://DLI9200;instanceName=SQLExpress;databaseName=DLIDEV"; 

,这是我

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 

类我可以,我也使用authorization.dll以及项目的我的Java部分sqljdbc4.jar与此连接的罚款。

对于我的asp经典的一面,我用这个作为我的连接字符串。

<% 
ConnString ="Provider=SQLOLEDB; Data Source=DLI9200\SQLEXPRESS; Database=DLIDEV; User Id=sa; Password=Passw0rd;" 
%> 

我认为这会工作,但它似乎并没有被加载anything.I把页面上的Tomcat和页转到负载只是没有被显示在IE中都放弃了。但我没有从任何页面收到任何错误,以防万一它有助于sql server和asp页面在同一台机器上。任何帮助或建议将大大帮助和赞赏。

+0

有可能是一个错误,但它可能只是不会被抓到。 Java是否有一个try-catch类型的块,您可以定义它在尝试获取数据时捕获任何异常? –

+0

你在Tomcat中运行的经典ASP页面?这可能是真的吗? –

+0

我不知道在Tomcat部分,但它确实加载了页面。为什么还有另一种加载页面的方式? –

回答

1

编辑 - 你不能在Tomcat上运行传统的ASP,你需要IIS(或IIS Express)。也许Tomcat为您的页面提供服务,就好像它们是平面HTML一样,但它对服务器端代码不起任何作用。

你的conn字符串看起来不错,但这里有两件事要尝试。

首先,用SQLNCLI替换SQLOLEDB。 (SQLNCLI10如果你使用MSSQL 2008或SQLNCLI11如果MSSQL 2012)

二 - 如果你想坚持SQLOLEDB,请尝试使用(而不是Database=DLIDEVInitial Catalog=DLIDEV

+0

嗯,这将解释为什么我可以看到平坦的HTML和没有错误。是否有可能在同一台计算机上运行Tomcat和IIS?有没有一个指导你可以建议为经典的ASP设置IIS?除了SQLOLEDDB之外,还有其他选择吗? –

+0

MSSQL 2005的SQLOLEDB可以吗?还是应该使用别的东西? –

+0

SQLOLEDB应该适用于任何版本。 Native Client(SQLNCLI)最早出现在2005年,MSSQL的更高版本随Native Client的更高版本提供,这就是为什么添加10或11的原因。此链接可能有所帮助。 http://www.connectionstrings.com/sql-server/ – John