java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at JDBCTest.main(JDBCTest.java:57)
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:297)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:286)
at java.lang.ClassLoader.loadClass(ClassLoader.java:253)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:313)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at JDBCTest.main(JDBCTest.java:57)
看你的错误信息好像没有找到驱动程序。
install_dir/lib/msutil.jar
install_dir/lib/mssqlserver.jar
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
换为:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
即可。
Connection myConn =
DriverManager.getConnection("jdbc:odbc:Northwind","forum","forum");//(“Northwind”表示数据库源,后面是用户名和密码)
import java.awt.*;
import java.sql.*;class JDBCTest extends Frame
{
TextArea myTextArea;
public JDBCTest ()
{
//设定程序的显示界面
super("一个简单的JDBC范例");
setLayout(new FlowLayout());
myTextArea = new TextArea(30,80);
add(myTextArea);
resize(500,500);
show();
myTextArea.appendText("数据库查询中,请等待......\n");
}
void displayResults(ResultSet results) throws SQLException
{
//首先得到查询结果的信息
ResultSetMetaData resultsMetaData = results.getMetaData();
int cols = resultsMetaData.getColumnCount();
//将等待信息清除
myTextArea.setText("");
//显示结果
while(results.next())
{
for(int i=1;i<=cols;i++)
{
if(i>1)
myTextArea.appendText("\t");
try
{
myTextArea.appendText(results.getString(i));
}
//捕获空值时产生的异常
catch(NullPointerException e){}
}
myTextArea.appendText("\n");
}
}
public boolean handleEvent(Event evt)
{
if (evt.id == Event.WINDOW_DESTROY)
{
System.exit(0);
return true;
}
return super.handleEvent(evt);
}
public static void main(String argv[]) throws SQLException,Exception
{
//设定查询字串
String queryString = "select * from Customers";
JDBCTest myJDBCTest = new JDBCTest();
//加载驱动程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//建立连接
Connection myConn =
DriverManager.getConnection("jdbc:odbc:Northwind","forum","forum");
Statement myStmt = myConn.createStatement();
//执行查询
ResultSet myResults = myStmt.executeQuery(queryString);
myJDBCTest.displayResults(myResults);
//关闭所有打开的资源
myResults.close();
myStmt.close();
myConn.close();
}
}
------------------------------
我已经调试通过了;如果你的机器环境没有问题,那么这个例子可以正常运行的。