JDBC连数据库问题
代码:程序代码:
import java.sql.*;
public class JDBCTest {
public static void main(String[] args) {
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库引擎
String connectDB="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=bb";
try {
Class.forName(JDriver);//加载数据库引擎,返回给定字符串名的类
} catch(ClassNotFoundException e) {
System.out.println("加载数据库引擎失败");
System.exit(0);
}
System.out.println("数据库驱动成功");
try{
String user="sa";
String password="sa123456";
Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象
System.out.println("连接数据库成功");
Statement stmt=con.createStatement();//创建SQL命令对象
System.out.println("开始创建表");
String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))";//创建表SQL语句
stmt.executeUpdate(query);//执行SQL命令对象
System.out.println("表创建成功");
System.out.println("开始插入数据");
String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";//插入数据SQL语句
String a2="INSERT INTO TABLE1 VALUES('2','伟哥')";
String a3="INSERT INTO TABLE1 VALUES('3','张哥')";
stmt.executeUpdate(a1);//执行SQL命令对象
stmt.executeUpdate(a2);
stmt.executeUpdate(a3);
System.out.println("插入数据成功");
System.out.println("开始读取数据");
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1");//返回SQL语句查询结果集(集合)
while(rs.next()) {
System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
}
System.out.println("读取完毕");
stmt.close();//关闭命令对象连接
con.close();//关闭数据库连接
} catch(SQLException e) {
e.printStackTrace();
System.exit(0);
}
}
}
运行后卡在这句:“Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象”
没有报错,也没有抛异常,停在这不动。各位大侠帮帮忙!新手没有分,不好意思!
public class JDBCTest {
public static void main(String[] args) {
String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库引擎
String connectDB="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=bb";
try {
Class.forName(JDriver);//加载数据库引擎,返回给定字符串名的类
} catch(ClassNotFoundException e) {
System.out.println("加载数据库引擎失败");
System.exit(0);
}
System.out.println("数据库驱动成功");
try{
String user="sa";
String password="sa123456";
Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象
System.out.println("连接数据库成功");
Statement stmt=con.createStatement();//创建SQL命令对象
System.out.println("开始创建表");
String query="create table TABLE1(ID NCHAR(2),NAME NCHAR(10))";//创建表SQL语句
stmt.executeUpdate(query);//执行SQL命令对象
System.out.println("表创建成功");
System.out.println("开始插入数据");
String a1="INSERT INTO TABLE1 VALUES('1','旭哥')";//插入数据SQL语句
String a2="INSERT INTO TABLE1 VALUES('2','伟哥')";
String a3="INSERT INTO TABLE1 VALUES('3','张哥')";
stmt.executeUpdate(a1);//执行SQL命令对象
stmt.executeUpdate(a2);
stmt.executeUpdate(a3);
System.out.println("插入数据成功");
System.out.println("开始读取数据");
ResultSet rs=stmt.executeQuery("SELECT * FROM TABLE1");//返回SQL语句查询结果集(集合)
while(rs.next()) {
System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
}
System.out.println("读取完毕");
stmt.close();//关闭命令对象连接
con.close();//关闭数据库连接
} catch(SQLException e) {
e.printStackTrace();
System.exit(0);
}
}
}
运行后卡在这句:“Connection con=DriverManager.getConnection(connectDB,user,password);//连接数据库对象”
没有报错,也没有抛异常,停在这不动。各位大侠帮帮忙!新手没有分,不好意思!
----------------解决方案--------------------------------------------------------
补充:我用的数据库是SQL Server2008R2,JDBC驱动2.0和3.0都试过,结果一样。
----------------解决方案--------------------------------------------------------
你没有试过远程访问你的数据库呢,先试试吧说不定是你的数据库的设置有问题呢
----------------解决方案--------------------------------------------------------
Tabl1是不是在数据库里正被访问者,没有提交啊,类似于锁定表呢
----------------解决方案--------------------------------------------------------