I'm building a website that uses an SQL database, but cant get Java to connect to SQL Server Express thats running on my local computer, or to an SQL server on an other website.I've tried many combinations of the jdbc:sqlserver:// url, but they all "refuse" to connect, except when I give it a nonexistant URL then it gives a NullPointerException as it should.How can I connect Java to SQL?If someone will come to my apartment (less than 1/2 mile from campus, I can drive you), I'll pay you $10to solve this problem.For the lazier people, please post solutions here...import java.sql.*;import java.util.*;public class TestSQL{ public static void main(String a[]){ System.out.println("Starting query..."); try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); Enumeration e = DriverManager.getDrivers(); Driver driver = null; while(e.hasMoreElements()){ driver = (Driver) e.nextElement(); System.out.println("driver: "+driver+" jdbcCompliant="+driver.jdbcCompliant()); } Properties prop = new Properties(); //prop.setProperty("user","b"); //prop.setProperty("password","nopass"); //Connection connection = driver.connect("jdbc:sqlserver://localhost;",prop); Connection connection = driver.connect("jdbc:sqlserver://localhost:1433;",prop); /*Statement stmt = connection.createStatement(); ResultSet createTable = stmt.executeQuery( "create table tt (a varchar(5), b varchar(10), c number(4));" );*/ //ResultSet allDrugs = c.query("select * from drug d"); //all drugs //ResultSet allDrugs = c.query("select * from drug d"); //all drugs connection.close(); }catch(Exception e){ e.printStackTrace(); } } }OUTPUT:Starting query...driver: com.microsoft.sqlserver.jdbc.SQLServerDriver@1fb8ee3 jdbcCompliant=truecom.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host has failed. java.net.ConnectException: Connection refused: connect at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source) at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source) at TestSQL.main(TestSQL.java:21)
1/23/2006 2:00:50 AM
no one is going to drive to your place and look at your code for $10.
1/23/2006 3:06:33 AM
are you running both the java server and SQL db locally?if not, try it. could be that your firewall/router is blocking the ports.
1/23/2006 3:37:53 AM
smoothcrim they dont need a car. I can drive them here and back. And if they know what they're doing, the whole thing would be done in 30 minutes.Noen yes I have SQL Server Express running locally. I also tried on a website using the server data they gave me. Both give the same error, the one I quoted above.
1/23/2006 7:02:55 AM
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");con = java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;databaseName="+databaseName+";selectMethod=cursor;","b","nopass")
1/23/2006 7:27:21 AM
Ignoring your reversal of jdbc and sqlserver, and removing the databaseName variable from the URL, I got a new error:D:\PR\SQL\java and sql>java -classpath sqljdbc.jar;. TestSQLStarting query...driver: com.microsoft.sqlserver.jdbc.SQLServerDriver@1fb8ee3 jdbcCompliant=truejava.sql.SQLException: No suitable driver at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at TestSQL.main(TestSQL.java:26)D:\PR\SQL\java and sql>I dont know the databaseName of my local SQL Express program, but earlier I tried the same thing with an internet server that I did know the databaseName of (without selectMethod=cursor) and got the error in my first post.[Edited on January 23, 2006 at 7:41 AM. Reason : ]
1/23/2006 7:40:47 AM
just for shits i was looking at my local MSDE configuration. It was installed as part of j# express 2005 and i never used it.Looks like TCP/IP is disabled by default.Dunno if that might be it or not. I R DB NEWB
1/23/2006 11:56:53 AM
can you connect from a commandline interface with all the info?try to eliminate the code, see if its a DB config issue
1/23/2006 11:19:28 PM