我对数据库管理还很陌生。我只是尝试连接到数据库并在命令提示符中检索并显示表。数据库不在我的电脑上。我很确定网址是问题所在。代码:
import java.io.*;
import java.sql.*;
class transfer{
//driver and DB URLs
final static String driver = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
final static String DB_SQL = "jdbc:microsoft:sqlserver://localhost:1433;" + "database=DataDB;" + "user=sa;" + "password=1234";
//Database Username and password
final static String user1 = "sa";
final static String pass1 = "1234";
static ResultSet rs;
public static void main(String args[]) throws SQLException, ClassNotFoundException{
Connection conn_sql = null;
Statement stmt_sql = null;
//Statement stmt_ora = null;
//Register JDBC driver
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
//Open Connection
System.out.println("Connecting to SQL database...");
conn_sql = DriverManager.getConnection(DB_SQL, user1, pass1);
//Execute Query
String sql_query;
System.out.println("Creating statement for SQL...");
stmt_sql = conn_sql.createStatement();
sql_query = "Select * from attendancesummary";
rs = stmt_sql.executeQuery(sql_query);
System.out.println("SQL table details");
System.out.println("Creating statement for SQL...");
while(rs.next()){
//Retrieve data
int cno = rs.getInt("CardNo");
int in_time = rs.getInt("entry");
int out_time = rs.getInt("Exittm");
String name = rs.getString("Name");
int date = rs.getInt("TrDate");
//Display data
System.out.print("Employee ID: "+cno);
System.out.print("\tName: "+name);
System.out.print("\tDate:"+date);
System.out.print("\tEntry: "+in_time);
System.out.print("\tExit: "+out_time);
}
}
}
数据库名称是DataDB,我想要检索和显示的表是attendancesummary。我已将路径设置为" C:\ Program Files \ Java \ jdk1.8.0_11 \ bin&#34 ;;" C:\ Program Files \ Microsoft JDBC Driver 4.0 for SQL Server \ sqljdbc_4.0 \ ENU \ sqljdbc4.jar"
代码编译好..但是当我运行它时,我收到以下错误:
线程中的异常" main" java.lang.ClassNotFoundException:com.microsoft.sqlserver.jdbc.SQLServerDriver 在java.net.URLClassLoader $ 1.run 在java.net.URLClassLoader $ 1.run 在java.security.AccessController.doPrivileged 在java.net.URLClassLoader.findClass 在java.lang.ClassLoader.loadClass 在sun.misc.Launcher $ AppClassLoader.loadClass 在java.lang.ClassLoader.loadClass 在java.lang.Class.forname0 在java.lang.Class.forname 在transfer.main
我真的迷路了。任何帮助将不胜感激!
答案 0 :(得分:1)
在类路径中添加sqljdbc4.jar。
如果您使用的是Eclipse,则可以右键单击项目 - >属性 - > java构建路径。 转到库并单击添加外部jar。 然后添加jdbc驱动程序jar。
希望这有帮助。
答案 1 :(得分:1)
这意味着在运行代码时 CLASSPATH 中缺少sqljdbc4.jar
。如果从命令行运行此命令,请在sqljdbc4.jar
命令的-cp
开关中添加java
的路径。
如果您从eclipse运行,请在构建路径中添加sqljdbc4.jar
。
答案 2 :(得分:0)
您必须将JDBC驱动程序添加到项目类路径中:例如,如果您使用Eclipse将jar放入' lib'夹