2012-01-31 68 views
0

IM几乎变得疯狂:)的Java JDBC连接到Microsoft SQL - 无连接,但没有任何错误

我安装了一个Microsoft SQL Server 2008 R2的IM我的网络,现在的IM试着到SQL数据库通过JAVA JDBC连接。即时通讯使用Microsoft JDBC驱动程序V3的sqljdbc4.jar(http://www.microsoft.com/downloads/de-de/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707

Java代码:

Connection conn = DriverManager.getConnection("jdbc:sqlserver://192.168.1.144:1433;database=mydatabase;user=root;password=root"); 
//this line is not even printed so the problem have to be at getConnection 
System.out.println("test"); 

奇怪的是,有没有出现异常。它只是无所事事。如果我用错误的用户名尝试它,则会出现异常,因此认证似乎可行。

也许有阻止来自java客户端(服务器的操作系统是MS Server 2008R2)的连接的afirewall问题?

希望你们中的一些人有一个想法可能是什么问题或解决方法。在此先感谢...

+0

我认为你是从连接字符串 – Cratylus 2012-01-31 22:04:41

+0

THX您的回复缺少'instanceName' ... 但它不是实例: 我想: '连接康恩= DriverManager.getConnection(“jdbc:sqlserver://192.168.1.144 \\ WIN-JRVO6I57T5V:1433 ;; loginTimeout = 20; database = Studienprojekt; user = root; password = root”);' 以及 'Connection conn = DriverManager.getConnection(“jdbc:sqlserver://192.168.1.144:1433; instanceName = WIN-JRVO6I57T5V; loginTimeout = 20; database = Studienprojekt; user = root; password = root”);' 在JDBC文档中,他们说如果没有提到实例,它将使用默认值。我认为多数民众赞成在我的情况是正确的... – Julian 2012-02-01 10:16:36

+0

所以我试图直接在服务器上运行的脚本与localhost作为服务器名称,它像charme一样工作。 因此,必须有一个正确的政策问题与sql服务器或微软服务器的防火墙...即时通讯不真正进入服务器的东西,所以也许你们有些人有一个想法在哪里看... – Julian 2012-02-01 20:05:08

回答