接触java不久,发现java真的不错,但是在使用java连接sql server2000数据库时遇到了很奇怪的问题。
首先,使用jdbc连接sql server
sql server 2000 sp4安装在windows 2003 server上,通过另一个xp系统远程连接,ms_jdbc已经安装,那三个包也加入了环境变量。程序如下:import java.sql.*;public class Test {
public void executeQuery(String sql){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String str1="jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=7777777;DatabaseName=Northwind";
//这里的用户和密码都是正确的
Connection conn=DriverManager.getConnection(str1);
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
System.out.println("TestName:"+rs.getString("lastname"));
}
}catch(Exception ex){
ex.printStackTrace();
}
}
public static void main(String[] args) {
// TODO code application logic here
Test t=new Test();
t.executeQuery("select * from employee");
}
}
可是这歌测试程序就是连接不上,在运行到Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");时就抛出异常,说无法加载Driver;请高手指教,错在何处,万分感谢。
第二,使用数据源ODBC方式连接时,即将上面的程序连接的部分改为:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection("jdbc:odbc:test", "sa", "7777777");
这时可以和sql server连接上,但是运行到ResultSet rs=stmt.executeQuery(sql);时,总是无法执行sql语句,报错说不识别employee这个表,百思不得其解。
请教高手指点上面这两种情况究竟错在哪里,谢谢各位仁兄了!
首先,使用jdbc连接sql server
sql server 2000 sp4安装在windows 2003 server上,通过另一个xp系统远程连接,ms_jdbc已经安装,那三个包也加入了环境变量。程序如下:import java.sql.*;public class Test {
public void executeQuery(String sql){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String str1="jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=7777777;DatabaseName=Northwind";
//这里的用户和密码都是正确的
Connection conn=DriverManager.getConnection(str1);
Statement stmt=conn.createStatement();
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
System.out.println("TestName:"+rs.getString("lastname"));
}
}catch(Exception ex){
ex.printStackTrace();
}
}
public static void main(String[] args) {
// TODO code application logic here
Test t=new Test();
t.executeQuery("select * from employee");
}
}
可是这歌测试程序就是连接不上,在运行到Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");时就抛出异常,说无法加载Driver;请高手指教,错在何处,万分感谢。
第二,使用数据源ODBC方式连接时,即将上面的程序连接的部分改为:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection("jdbc:odbc:test", "sa", "7777777");
这时可以和sql server连接上,但是运行到ResultSet rs=stmt.executeQuery(sql);时,总是无法执行sql语句,报错说不识别employee这个表,百思不得其解。
请教高手指点上面这两种情况究竟错在哪里,谢谢各位仁兄了!
解决方案 »
- struts2出错Unable to load configuration. - action - file:/D:/workspace/……
- 空指针的问题
- preparedstatement怎么拼接sql语句
- 请问大家这个指数图是怎么做成的?谢谢各位了!!!
- Hibernate 遇到的简单问题。大哥们,帮帮忙,进来看看,是什么错误???
- jxl 操作Excel日期转换问题
- 散分,一个简单的注册问题!
- jsp 中的循环标签为何不起作用[急]?——附简单示例代码 大虾亮招(高分奉送)……
- session问题?急啊!在线等!
- java poi Excel大数据量(千万级)导入如何提高速度
- 小弟求高手提示一个可用JS
- JAVA SERVLET 关于监听的项目
还有你是要连接其他机器电脑的数据库吗?
str1="jdbc:microsoft:sqlserver://localhost:1433;
怎么还用localhost,localhost是针对你本机的