我现在用的是SQL Server2008,现在我用纯Java驱动方式,想连接数据库,然后就出现如下提示
无法找到驱动类
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:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at S2jsp.sg.ch03.ConnectionManager.GetConnection(ConnectionManager.java:26)
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:25)
Exception in thread "main" java.lang.NullPointerException
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:26)
Java Result: 1那么从哪下载相应的JDBC驱动程序呢,下载后怎样引入的工程中呢,还有JDBC驱动类名称和数据库连接字符串是怎么写呢,请回答一下
无法找到驱动类
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:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at S2jsp.sg.ch03.ConnectionManager.GetConnection(ConnectionManager.java:26)
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:25)
Exception in thread "main" java.lang.NullPointerException
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:26)
Java Result: 1那么从哪下载相应的JDBC驱动程序呢,下载后怎样引入的工程中呢,还有JDBC驱动类名称和数据库连接字符串是怎么写呢,请回答一下
安装和使用:http://blog.csdn.net/net_lover/archive/2009/02/04/3861362.aspx
jdbc:sqlserver://hostip:port;databaseName=数据库名称;user=用户名;password=密码;
com.microsoft.sqlserver.jdbc.SQLServerException: 端口号 port 无效。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:580)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:841)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at S2jsp.sg.ch03.ConnectionManager.GetConnection(ConnectionManager.java:27)
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:25)
java.lang.NullPointerException
at S2jsp.sg.ch03.FirstLevelTitleDBJava.main(FirstLevelTitleDBJava.java:26)
应该写成你实际的sql server的运行端口吧
Connection conn = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String URL = "jdbc:sqlserver://localhost:1433;DatabaseName=CYZ";
String USER = "sa"; // 根据你自己设置的数据库连接用户进行设置
String PASSWORD = "123"; // 根据你自己设置的数据库连接密码进行设置
conn = DriverManager.getConnection(URL, USER, PASSWORD);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
难道数据库中没有sa这个超级用户吗,我创建数据库的时候没创建用户,那么怎么创建呢
通过这个管理工具可以建立登陆用户
1.创建使用 Windows 身份验证用户
2.创建使用 SQL Server 身份验证
你要不会 就照着下面这个教程来
http://space.itpub.net/16436858/viewspace-503156
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class DBCon {
private static String driver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
private static String url="jdbc:sqlserver://localhost:1433;databasename=xxDB";
private static String user="sa";
private static String pwd="sa";
public static Connection getConnection(){
try {
Class.forName(driver);
Connection con=DriverManager.getConnection(url, user, pwd);
System.out.println("OK");
return con;
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
public static void closeConnection(Connection con){
if(con!=null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void closeStatement(Statement stm){
if(stm!=null){
try {
stm.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void closeResultSet(ResultSet rs){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
public static void main(String[] args) {
getConnection();
}
}]根据实际情况改下url用户名密码
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user 'sa'. Reason: The account is disabled.
我现在感觉是不是我的SQL Server2008的问题,我的是Enterprise Evaluation版的,不知道是怎么回事?