Java ODBC连接SqlServer数据库

做项目,客户想让金蝶K3系统能访问到Oracle数据库;

Ps:JDK1.7以前有支持ODBC的jar包,JDK1.8之后需要另外找jar包;

 1 import java.sql.Connection;
 2 import java.sql.DriverManager;
 3 import java.sql.PreparedStatement;
 4 import java.sql.ResultSet;
 5 
 6 public class MainApp {
 7 
 8     public static void main(String[] args) {
 9         getConn();
10     }
11 
12     private static void getConn() {
13         //创建连接对象
14         Connection ct = null;
15         //创建用于发生sql语句的对象
16         PreparedStatement ps = null;
17         //创建用于接受结果集的对象
18         ResultSet resultSet = null;
19         //构造函数
20         {
21             try {
22                 //加载驱动
23                 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
24                 //得到连接
25                 ct = DriverManager.getConnection("jdbc:odbc:SQLEXPRESS", "sa", "password");
26                 //进行crud操作
27                 //查询操作
28                 ps = ct.prepareStatement("select * from dbo.user_info");
29                 //将结果输入到结果集中
30                 resultSet = ps.executeQuery();
31                 //循环输出
32                 while (resultSet.next()) {
33                     int id = resultSet.getInt("id");
34                     String name = resultSet.getString("name");
35                     //String sex = resultSet.getString("sex");
36                     byte[] sex = resultSet.getBytes("sex"); // 解决中文乱码问题
37                     int age = resultSet.getInt("age");
38                     //String address = resultSet.getString("address");
39                     byte[] address = resultSet.getBytes("address"); // 解决中文乱码问题
40                     //输出结果
41                     System.out.println(id + " " + name + " " + new String(sex, "gbk") + " " + age + " " + new String(address, "gbk"));
42                 }
43             } catch (Exception e) {
44                 e.printStackTrace();
45             } finally {
46                 try {
47                     //关闭资源
48                     if (resultSet != null) {
49                         resultSet.close();
50                     }
51                     if (ps != null) {
52                         ps.close();
53                     }
54                     if (ct != null) {
55                         ct.close();
56                     }
57 
58                 } catch (Exception e2) {
59                     e2.printStackTrace();
60                 }
61 
62 
63             }
64 
65         }
66     }
67 
68 }
原文地址:https://www.cnblogs.com/mxh-java/p/15141098.html