1.假设SQL数据库“test”下有表“PRESON”
2.连接表PERSON并打印出表的每一行:
1. package
2.
3. import
4.
5. public class
6.
7. /**
8. * @param args
9. */
10. public static void
11. // TODO Auto-generated method stub
12. null;
13. null;
14. null;
15. "jdbc:sqlserver://localhost:1433;DatabaseName=test";
16. "select * from PERSON";
17.
18. try
19. "com.microsoft.jdbc.sqlserver.SQLServerDriver");
20. catch
21. // TODO Auto-generated catch block
22. e.printStackTrace();
23. }
24.
25. try{
26. "sa", "");
27. stmt = con.createStatement();
28. rs = stmt.executeQuery(q);
29. while(rs.next()) {
30. 1);
31. 2);
32. 3);
33. int id = rs.getInt(4);
34. "\t" + time + "\t" + content + "\t"
35. }
36.
37. catch
38. sqe.printStackTrace();
39. }
40.
41. try
42. rs.close();
43. stmt.close();
44. con.close();
45. catch
46. // TODO Auto-generated catch block
47. e.printStackTrace();
48. }
49.
50.
51. }
52.
53. }
3.说明及调试:要注意15行中url的准确性,同时注意26行取得数据库连接时用的用户名以及密码是否与数据库的用户名和登录密码相匹配。
4.在初步测试时,由于将15行中的localhost:1433错写成localhost:1443,结果出现如下错误:
1. java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for
2. at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
3. at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
4. at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
5. at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
6. at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
7. at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
8. at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
9. at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
10. 582)
11. 185)
12. 26)
13. Exception in thread "main"
14. 42)
5.使用netstat查看使用端口
- netstat -a -n
6.或者直接查询端口
- netstat -a -n |find "1443"
发现端口1443没有处于服务状态,而仔细查看SQL端口后,知道SQL端口应该是“1433”,果断改代码,连接成功。