java如何连接SQLserver数据库?

java相对于其他语言(例如c,c++等)连接数据库要方便得多,
那么,如何连接呢?
1.导入jar包:我这有3个版本
随便下一下即可
链接:https://pan.baidu.com/s/1BRZiXIHP3VtdMiuOkrfj-Q
提取码:tyu0
2.新建一个文件夹,将jar包放进去,如图:
在这里插入图片描述
3.接着,将鼠标放在你的项目名上,右击–>properties,然后如图,点击add ars…
在这里插入图片描述
4.然后选择你刚导入的jar包,点击ok,最后点击apply and close;
在这里插入图片描述
5.java与SQLserver连接具体代码如下:

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.ArrayList;
    import java.util.List;
    
    public class DBManager {
    	private Connection con;
    	private Statement sta;
    	private ResultSet rs;
    	/********************静态块可以提高效率***********/
    	static {
    		try {
    			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
    		} catch (ClassNotFoundException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    	/**
    	 * 加载驱动程序
    	 */
    	
    	public Connection getConnection(){
**/****1433是你自己的SQLserver端口号(默认是1433)*********/
 **/**************DatabaseName是你要连接的数据库名称*********/
    		String url = "jdbc:sqlserver://localhost:1433;DatabaseName=yun4jbookSY1";
    		try {
/**第一个sa是你的SQLserver用户名,第二个是此用户名所对应的密码***/
    			con = DriverManager.getConnection(url, "sa", "sa");
    			sta = con.createStatement();
    			System.out.println("链接成功");
    		} catch (SQLException e) {
    			System.out.println("连接失败");
    			e.printStackTrace();
    		}
    		
    		return con;
    	}
    	
    	/*public DBManager() {
    		List<Connection> list = new ArrayList<Connection>();
    		for (int i = 0; i < 5; i++) {
    			list.add(this.getConnection());
    		}
    		this.con = list.get(0);
    	}*/
    	public int update(String sql){
    		int row = -1;
    		con = getConnection();
    		try {
    			row = sta.executeUpdate(sql);
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		} finally{
    			this.close();
    		}
    		return row;
    	}
    	
    	public ResultSet query(String sql){
    		con = getConnection();
    		try {
    			rs = sta.executeQuery(sql);
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    		return rs;
    	}
    	
    	public void close(){
    		try {
    			if (rs != null) {
    				rs.close();
    				rs = null;
    			}
    			if (sta != null) {
    				sta.close();
    				sta = null;
    			}
    			if (con != null) {
    				con.close();
    				con = null;
    			}
    		} catch (SQLException e) {
    			// TODO Auto-generated catch block
    			e.printStackTrace();
    		}
    	}
    }

注意:要使你的端口号以及数据库名称,用户名和密码与你自己的SQLserver所对应的一样!
自己刚开始运营公众号啦,本人目前就职于某bank,感兴趣的可关注我的公众号,欢迎交流!

image.png

  • 89
    点赞
  • 483
    收藏
  • 打赏
    打赏
  • 74
    评论
import java.sql.*; import jdbc.DBManager; import jdbc.DBManagerTest; /** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: </p> * @author * @version 1.0 */ /** * DBManager示例程序 */ public class Test { public Test() { } public static void main(String[] args) { DBManagerTest DBManagerTest1 = new DBManagerTest(); DBManager db_manager = new DBManager(); ResultSet result = null; // 数据库查询结果 try { db_manager.connect("rcms"); // 建表 db_manager .execute("create table table22 (c1 varchar(32) not null,c2 varchar(21))"); } catch (SQLException x) { x.printStackTrace(); try { db_manager.disconnect(); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } System.err.print("数据库操作失败!"); } try { // 表更新操作,包括insert,update,delete db_manager .executeUpdate("insert into table22 (c1,c2) values('workflow1','engine1')"); db_manager .executeUpdate("insert into table22 (c1,c2) values('workflow2','engine2')"); db_manager .executeUpdate("insert into table22 (c1,c2) values('workflow3','engine3')"); db_manager .executeUpdate("insert into table22 (c1,c2) values('workflow4','engine4')"); db_manager.beginTransaction(); // for(int i=1500;i<2000;i++){ //// db_manager.executeUpdate("insert into T_USER (USER_ID, USER_NAME, ORG_ID, PASSWD, OLD_PASSWD, STATION, CREAT_DATE, CREAT_TIME, ALTER_DATE, ALTER_TIME, DEL_DATE, TEL, EMAIL, STATUS, SEX, ACADEMIC, CERTI_TYPE, CERTI, FAX, ADRESS, POSTCODE, BAK1, BAK2, BAK3, BAK4, BAK5)values ('test00"+i+"', 'test00"+i+"', '0001 ', 'FF5E61835C355E755EEF9321 ', 'A43B59E342F86CEE5EEF9321 ', '0 ', '20071201', '101010', null, null, null, null, null, '1', null, null, null, null, null, null, null, null, null, null, null, null)"); // db_manager.executeUpdate("insert into T_USER_ROLE values('test00"+i+"','sys_admin','')"); // if(i%300==0)db_manager.commitTransaction(); // } } catch (SQLException x) { x.printStackTrace(); try { db_manager.disconnect(); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } System.err.print("数据库操作失败!"); } try { // 表查询操作,返回结果集存在DBResult类中,DBResult中的数据库查询结果已与数据库断开连接了, // 不能动态更新,注意在并发操作中应重新执行表查询操作 result = db_manager.executeQuery("select * from table22"); } catch (SQLException x) { x.printStackTrace(); try { db_manager.disconnect(); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } System.err.print("数据库操作失败!"); } // int rows = result.getRows(); //返回的记录数 try { while (result.next()) { String s = result.getString("c1");// 取第4条记录c1的字段 System.out.println(s); s = result.getString("c2"); System.out.println(s); } } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); } } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:技术黑板 设计师:CSDN官方博客 返回首页
评论 74

打赏作者

潇洒不放纵的博客

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值