我的程序;
import java.sql.*;public class sqllink
{
public static void main (String[] args ) throws ClassNotFoundException, SQLException
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String str ="jdbc:microsoft:sqlserver://192.168.50.60:1433;DatabaseName=student";
String user = "sa";
String pass = "software";
Connection conn = DriverManager.getConnection(str,user,pass);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql = "select * from student";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
System.out.print(rs.getString(0));
System.out.print(rs.getString(1));
System.out.print(rs.getString(2));
}
rs.close();
stmt.close();
conn.close();
}
}编译后有个错误:
Exception in thread "main" java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at wangsong.data.sqllink.main(sqllink.java:9)
我想估计是驱动的问题,但是我把msbase.jar,mssqlserver.jar,msutil.jar加到LIB 下还是这个错误,希望高手指教~
import java.sql.*;public class sqllink
{
public static void main (String[] args ) throws ClassNotFoundException, SQLException
{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String str ="jdbc:microsoft:sqlserver://192.168.50.60:1433;DatabaseName=student";
String user = "sa";
String pass = "software";
Connection conn = DriverManager.getConnection(str,user,pass);
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql = "select * from student";
ResultSet rs = stmt.executeQuery(sql);
while(rs.next())
{
System.out.print(rs.getString(0));
System.out.print(rs.getString(1));
System.out.print(rs.getString(2));
}
rs.close();
stmt.close();
conn.close();
}
}编译后有个错误:
Exception in thread "main" java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at wangsong.data.sqllink.main(sqllink.java:9)
我想估计是驱动的问题,但是我把msbase.jar,mssqlserver.jar,msutil.jar加到LIB 下还是这个错误,希望高手指教~
用winrar打开看一下
比如“你以前的lib参数”;d:\j2sdk1.4.1_01\lib\mssqlserver.jar;
建议用 jTDS的那个 jar 文件做驱动. 因为MS的那3个包并不是纯网络协议的.
速度没有这个jtds的JAR文件快. 这个包是开源的一些爱好者自己写的驱动.现在很流行
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
这样才会载入驱动
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver")
我同 事写得代码就没有呢newInstance()方法,也能连上,两者有什么区别?
需要设置数据源为Test1
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:Test1", "sa", "123");
**************************************************************/
/******************************方法二*************************
不需要设置数据源
**************************************************************/
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dbUrl = "jdbc:odbc:driver={SQL Server};Server=192.168.0.111;Database=analysys;Uid=sa;Pwd=123";
con = DriverManager.getConnection(dbUrl);