Java通过JDBC连接SQL Server2017数据库
一、需要明白的基础知识
数据库名 | 驱动jar(x表示版本号) | 具体驱动类 | 连接字符串(ip地址,端口号,名字) |
Oracle | ojdbc-x.jar | oracle.jdbc.oracleDriver | jdbc:oracle:thin:@localhost:1521:ORCL |
MySQL | mysql-connetor-java-x.jar | com.mysql.jdbc.Driver | jdbc:mysql://localhost:3306/数据库实例名 |
SQL SERVER | sqljdbc-x.jar | com.mircosoft.sqlserver.jdbc.SQLServerDriver | jdbc:mircosoft:sqlserver:localhost:1433;databasename=数据库实例名 |
二、操作
导入jar包
下载Microsoft JDBC Driver 4.0 for SQL Server
在这里下载:http://www.microsoft.com/zh-cn/download/details.aspx?id=11774
java1.8对于版本为sqljdbc42
在D盘新建一个文件夹,命名为sqljdbc42,将sqljdbc42.jar复制一个进去。
右击 我的电脑 → 属性 → 高级系统设置(高级) → 环境变量,双击CLASSPATH变量(或选中CLASSPATH后 → 编辑),
在最后面追加 “;D:\sqljdbc42 \sqljdbc42.jar” (注意最前面有个 ; )
若不存在CLASSPATH,就新建CLASSPATH变量,并且将其值设为“D:\sqljdbc42 \sqljdbc42.jar”
如果是使用Tomcat做服务器,那么我们需要将sqljdbc42.jar类库文件拷贝到C:\apache-tomcat-***(版本号)\lib目录下
除此之外还需要将sqljdbc42.jar类库文件拷贝到C:\Program Files(X86)\Java\jre8\lib\ext目录下
然后在ecilipse里新建java项目,在src目录右键“BuildPath”,如图
添加解压在D盘的sqljabc.jar文件
然后新建class运行即可
三、测试连接运行
示例代码:
1 package Test; 2 3 import java.sql.*; 4 5 public class Test { 6 7 public static void main(String[] args) { 8 update(); 9 10 } 11 12 13 public static void update() { 14 Connection connection=null; 15 String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";//SQL数据库引擎 16 String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=tjl";//数据源 !!!注意若出现加载或者连接数据库失败一般是这里出现问题 17 String Name="sa"; 18 String Pwd="19990713"; 19 try{ 20 Class.forName(driverName); 21 connection=DriverManager.getConnection(dbURL,Name,Pwd); 22 System.out.println("连接数据库成功"); 23 }catch(Exception e){ 24 e.printStackTrace(); 25 System.out.println("连接失败"); 26 } 27 Statement stmt = null; 28 try { 29 stmt = connection.createStatement(); 30 } catch (SQLException e) { 31 // TODO Auto-generated catch block 32 e.printStackTrace(); 33 } 34 //增删改操作 35 String sql_1="insert into student values('990403','佩奇','男','12','1','2101')"; 36 int count_1 = 0; 37 try { 38 count_1 = stmt.executeUpdate(sql_1); 39 } catch (SQLException e) { 40 // TODO Auto-generated catch block 41 e.printStackTrace(); 42 }//返回值表示增删改几条数据 43 //处理结果 44 if(count_1>0){ 45 System.out.println("更新成功!"); 46 } 47 //查询操作 48 String sql_2="select * from student"; 49 50 //关闭 51 try { 52 stmt.close(); 53 } catch (SQLException e) { 54 // TODO Auto-generated catch block 55 e.printStackTrace(); 56 } 57 try { 58 connection.close(); 59 } catch (SQLException e) { 60 // TODO Auto-generated catch block 61 e.printStackTrace(); 62 } 63 } 64 } 65
测试结果