jdbc连接sql server 2000的奇怪问题,请各位执教
接触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这个表,百思不得其解。
请教高手指点上面这两种情况究竟错在哪里,谢谢各位仁兄了! --------------------编程问答-------------------- 估计是你的jar包没有导入成功,你的异常不就是找不到驱动类。
还有你是要连接其他机器电脑的数据库吗?
str1="jdbc:microsoft:sqlserver://localhost:1433;
怎么还用localhost,localhost是针对你本机的 --------------------编程问答-------------------- 谢谢chabale,我再看看,str1="jdbc:microsoft:sqlserver://localhost:1433;是我测试本地的数据库用的,不好意思,这里贴错了,连接远程数据库时候localhost已经换成192.168.24.133,可是结果是一样的 --------------------编程问答-------------------- 自己顶一下,尤其是第二个问题,通过数据源ODBC连上了数据库,可是却不能执行sql语句查看表,搞不明白啊 --------------------编程问答-------------------- --------------------编程问答-------------------- 第二个问题,已经解决,是数据表名字写错了,少写了个s,狂汗!昨天夜里看来神志不清了,但是第一个问题还得请教诸位,能不能给个比较详细的安装和导入mssqlserver.jar,msutil.jar,msbase.jar的过程?谢谢啦 --------------------编程问答-------------------- 问题已经解决,导入jar时出错,谢谢诸位,以后还得加紧学习啊! --------------------编程问答-------------------- 下次小心点,就是了。记得结贴撒。
补充:Java , Web 开发