这个问题的原因是找不到类,下面的代码是正常的,在JDK1.6版本是可以运行的,在JDK1.6版本后甲骨文公司已经取消ODBC桥连的方式,解决方法是换另一种驱动方式,当前Server SQL用驱动是com.microsoft.sqlserver.jdbc.SQLServerDriver,连接串是jdbc:sqlserver://localhost:1433;databaseName=数据库名

 

 1 /**
 2  * 作者:白客C
 3  * 时间:2020年03月15日
 4  * 演示使用jdbc-odbc桥连方式操作数据库
 5  * 1.配置数据源
 6  * 2.在程序中连接数据源
 7  */
 8 package com.beekc.www;
 9 import java.sql.*;
10 
11 public class Odbc {
12     public static void main(String[] args) {
13 
14         //2
15         Connection ct = null;
16         //3
17         Statement sm = null;
18         try {
19             //1.加载驱动
20             Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
21             //2.得到连接[指定连接到哪个数据源,用户名,密码]
22             //如果配置数据源的时候,选择Windons NT验证就不需要填用户名和密码
23             //Connection ct = DriverManager.getConnection("jdbc:odbc:beekc");
24             ct = DriverManager.getConnection("jdbc:odbc:beekc", "sa", "admin..");
25 
26             //3.创建Statement或者PreparedStatement
27             //Statement用处:主要用于发送sql语句到数据库
28             sm = ct.createStatement();
29 
30             //4.执行(crud、创建数据库、备份数据库、删除数据...)
31             //1.添加一条数据到
32             //executeUpdate可以执行cud操作,放回int型
33             //int i = sm.executeUpdate("insert into stu values('000013','吴用','三国')");
34             //if (i == 1)
35             //{
36                 //System.out.println("添加成功");
37             //}else{
38                 //System.out.println("添加失败");
39             //}
40             //2.查询
41             //ResultSet结果集,可以把ResultSet理解成一个表行的结果集
42             ResultSet rs = sm.executeQuery("select * from stu");
43 
44             //rs指向结果集的第一行的前一行
45             //循环取出
46             while (rs.next())
47             {
48                 String str1 = rs.getString(1);
49                 String str2 = rs.getString(2);
50                 String str3 = rs.getString(3);
51                 System.out.println("sno:" + str1 + "sname:" + str2 + "address:" + str2 );
52             }
53         }catch (Exception e){
54             e.printStackTrace();
55         }finally {
56             //关闭资源
57             //关闭顺序,后创建先关闭
58             try{
59                 if(sm != null)
60                 {
61                     sm.close();
62                 }
63                 if (ct != null)
64                 {
65                     ct.close();
66                 }
67             }catch (Exception e){
68                 e.printStackTrace();
69             }
70         }
71 
72     }
73 }

 

posted on 2020-03-15 21:57  白客C  阅读(3498)  评论(0编辑  收藏  举报