JDBC连接SQL Server2008基本格式及示例代码
下面的代码显示了连接SQL Server数据库时,
连接数据库的步骤:
1、注册驱动 (只做一次)
2、建立连接(Connection)
3、创建执行SQL的语句(Statement)
4、执行语句
5、处理执行结果(ResultSet)
6、释放资源
建立连接的方法:
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); //加载数据库引擎,返回给定字符串名的类 String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test"; //test为你的数据库的名称 String user="用户名"; String password="密码"; Connection conn=DriverManager.getConnection(url,user,password); //连接数据库对象 Statement stmt=conn.createStatement(); //创建SQL命令对象 String query="";//创建表SQL语句 stmt.executeUpdate(query);//执行SQL命令对象 String a="INSERT/DELETE.... INTO/FROM “表名” VALUES(....,...)"; .... .... .... stmt.executeUpdate(a);//执行SQL命令对象 //读取数据 ResultSet rs=stmt.executeQuery("SELECT * FROM “表名”"); //循环输出每一条记录 rs最初指向第一条记录的前面 while(rs.next){ } 最后关闭连接 stmt.close(); con.close(); 数据库连接(Connection)是非常稀有的资源,用完后必须马上释放, 如果Connection不能及时正确的关闭将导致系统宕机。 Connection的使用原则是尽量晚创建,尽量早的释放。下面分别给出插入、修改、删除、查询的基本方式的代码:
插入数据:
import java.sql.*; /** * @version 2012-02-22 * @author */ public class InsertDemo { public static void main(String[] args) throws SQLException { Connection conn = null; Statement stmt = null; String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL鏁版嵁搴撳紩鎿� String connectDB="jdbc:sqlserver://localhost:1433;DatabaseName=JDBCTest";//鏁版嵁婧惵� String user="sa"; String pwd="sql"; try { // 动态导入数据库的驱动 Class.forName(JDriver); // 获取数据库链接 conn = DriverManager.getConnection(connectDB,user,pwd); // 创造SQL语句 String sql = "INSERT INTO JDBCTestTable ( user_name, user_password ) VALUES ( 'balabala', '123456' )"; // 执行SQL语句 stmt = conn.createStatement(); stmt.executeUpdate(sql); System.out.println("插入数据成功"); } catch (Exception e) { e.printStackTrace(); stmt.close(); conn.close(); } } }修改数据:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class UpdateDemo { public static void main(String[] args) throws SQLException { Connection conn = null; Statement stmt = null; try { // 动态导入数据库的驱动 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); // 获取数据库链接 conn = DriverManager.getConnection( "jdbc:sqlserver://localhost:1433;DatabaseName=JDBCTest", "sa", "sql"); // 创造SQL语句 String sql = "UPDATE JDBCTestTable SET user_password = '456' WHERE user_name = 'Eric'"; // 执行SQL语句 stmt = conn.createStatement(); stmt.executeUpdate(sql); System.out.println("更新数据成功"); } catch (Exception e) { e.printStackTrace(); stmt.close(); conn.close(); } } }删除数据:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class DeleteDemo { public static void main(String[] args){ String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=JDBCTest"; String user="sa"; String password="sqlyanghai"; try{ Class.forName(JDriver);// 动态导入数据库的驱动 Connection conn=DriverManager.getConnection(url, user, password);// 获取数据库链接 String query="DELETE FROM JDBCTestTable WHERE user_name='Eric'";// 创造SQL语句 Statement stmt=conn.createStatement();// 执行SQL语句 stmt.executeUpdate(query); System.out.println("删除数据成功"); stmt.close(); conn.close(); }catch(Exception e){ e.printStackTrace(); } } }查询数据:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class QueryDemo { public static void main(String[] args){ String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=JDBCTest"; String user="sa"; String password="sql"; try{ Class.forName(JDriver);// 动态导入数据库的驱动 Connection conn=DriverManager.getConnection(url, user, password);// 获取数据库链接 String query="SELECT * FROM JDBCTestTable";// 创造SQL语句 Statement stmt=conn.createStatement();// 执行SQL语句 ResultSet rs=stmt.executeQuery(query); while(rs.next()){ System.out.println(rs.getString("user_name")+":"+rs.getString(2)); //密码字段的编号从1开始,密码排第二位 } System.out.println("查询数据成功"); rs.close(); stmt.close(); conn.close(); }catch(Exception e){ e.printStackTrace(); } } }转自:http://blog.csdn.net/yanghai0321/article/details/7288363
本文由用户 fmms 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
转载本站原创文章,请注明出处,并保留原始链接、图片水印。
本站是一个以用户分享为主的开源技术平台,欢迎各类分享!