使用jdbc java 连接 sqlserver 2008数据库 需要注意的事项
1jar包: 如果是6以上的jdk ,记得使用sqljdbc4.jar (怎么在这里添加附件?)而非sqljdbc.jar,否则连不上
2驱动: 由于这个jar包的缘故,加载连接驱动时Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");而非Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); 注意下划线的两个部分。这是由于jar包里jdbc是在sqlserver文件夹底下,而不是和其他jar包一样,sqlserver在jdbc底下。
3 设置连接参数url的时候,String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=你的数据库名"; 下划线部分是错误的!
正确的是String url = "jdbc:sqlserver://localhost:1433;DatabaseName=你的数据库名"
1>没有jdbc:microsoft:sqlserver 里的microsoft
2> "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=你的数据库名" 不能写成"jdbc:microsoft:sqlserver://localhost:1433/你的数据库名"的形式
修改完这三处就好了
贴上自己的代码给大家。
// 步骤1:加载连接驱动
Class.forName("com.microsoft.sqlserver.j2dbc.SQLServerDriver");
// 步骤2:设置连接参数
// String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=你的数据库名"; 这个是错误的!
// String account = "用户名";
// String password = "密码";
// // 步骤3:使用驱动管理器对象DriverManager实例化Connection
// conn = DriverManager.getConnection(url,account,password);
conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DatabaseName=你的数据库名","用户名","密码");
// 步骤4:创建Statement对象,发送SQL指令
stmt = conn.createStatement();
// 注意:stmt对象发送SQL语句有两种方法:1) 执行 增删改 .executeUpdate(SQL语句) -> 影响行数 2) 执行 查询 .executeQuery(SQL语句) -> 结果集合
// int affectedRows = stmt.executeUpdate("update users set password = '555' where uid=2");
// 提示:
// System.out.println(affectedRows>0?"操作成功!":"操作失败!");
stmt.execute("insert into mytable values('name567')");
ResultSet rs = stmt.executeQuery("select * from td_Person");
// 步骤:使用while循环遍历结果集中的记录
while(rs.next()){
System.out.println(rs.getInt(1)+"\t"+rs.getString(2)+"\t");
}
jdbc:microsoft:sqlserver