当前课程知识点:数据库系统原理与开发 > 第6章 数据库应用编程 > 6.1 数据库连接技术 > 6.1.1 数据库连接技术-1
同学们好
我是数据库主讲教师陈安龙
本节将给大家介绍数据库连接技术(ODBC)
本节的主要内容主要包括如下几个方面
要求我们了解数据库编程的编程的基本内容
要求了解ODBC的技术背景
要求掌握数据库ODBC的层次结构
理解应用程序使用ODBC访问数据库的步骤
掌握ODBC数据源的配置方法
我们下面来给大家介绍第一小节的内容
数据库编程的一些简介
同学们来看这张图
这张图揭示了我们的数据库程序的组成
第一部分是客服端程序
第二部分是服务器端的应用程序
我们通过红色的虚线把它分成上下两部分
上面部分是客户端的应用程序
下面部分是数据库服务器端
客户端的应用程序来访问数据库主要有三种方式
第一 单独使用SQL语言直接采用交互式的方式来访问数据库
第二 我们的应用程序是采用C/S模式
它的程序是用Java语言 C delphi语言等高级语言编写的
它访问数据库来
是通过ODBC或JDBC中间件来访问我们的数据库
我们把SQL语句写在高级语言里面
第三种方式是
我们用户通过浏览器来访问我们的数据库
这种方式就是我们常说的B/S模式
它是用浏览器通过WEB服务器来访问我们的数据库
我们客户端的应用程序是用高级语言
如JAVA语言 JSP语言来编写
我们再来看数据库服务器端的编程包括哪些方面的内容
我们数据库服务器端的编程主要包括
存储过程的编写或函数的编写
在有些数据库里面
把存储过程和函数统一成一种方式来实现
比如我们的PostgreSQL
第二 我们还有触发器的编程
第三 还有游标的编程
在后面我们将给大家介绍相关的内容
数据库的编程可以总结为三个方面
第一 客户端应用程序的编写
第二 是数据库服务器端的程序编写
第三 JDBC两个中间件之一来访问数据库或客户端程序使用ODBC
所以说数据库的编程包括这三个方面的内容
我们下面来看ODBC产生的技术背景
在传统应用开发中
应用系统通常选用特定的DBMS管理系统
网络环境下
应用系统通常需要对多种数据库的实现互连和资源共享
如果从一种DBMS改变到另一种DBMS
就意味着要重写应用程序
在同一应用系统中
编制多种能在不同的数据库管理系统上运行的应用程序
显然这种方式是不可取
因此在数据库的开发过程中
微软推出了一种开放式的数据库互联技术
简称为ODBC技术
这种技术实现了应用程序对多种不同的数据库的访问
实现了数据库连接方式的变革
这种技术定义了一套与数据库无关的公共API
应用程序的编写时通过API来访问数据库
使每个应用程序利用相同的源代码
就可以访问不同的数据库系统
存取多个数据库当中的一些数据
从而使得应用程序与数据库管理系统
实现了在逻辑上的独立性
从而使应用程序具有数据库无关性
下面我们看一下数据库ODBC的层次结构
我们通过这一个图由上到下
我们可以看一下
第一层是客户端的数据库应用程序
这个应用程序是由我们的应用数据库设计者提供的
第二层是ODBC应用程序接口
第三层是odbc应用程序的管理器
下面是各个数据库厂商
分别针对自己的数据库提供的驱动程序
我们下面看一下客户端的数据库应用程序的功能和作用
第一 它请求与数据源的连接和会话
也就是我们客户端应用程序要向数据源请求建立连接
第二 我们要向数据源发送SQL请求
也就是我们要向数据源提交我们的SQL语句
第三 要对SQL请求的结果定义或者创建存储区
和定义它的数据格式
第四 从服务器端获得请求结果
根据请求结果 如果请求结果有错误
要对错误进行处理
第六 如果有需要的话 把结果返回给用户
第七 对事务进行控制 执行或回滚(回退)操作
第八 终止对数据源的连接
通过这八个过程阐释了
我们客户端的应用程序对数据库进行操作的时候
所要执行的几个基本步骤
下面我们看一下下面这一层ODBC应用程序接口
ODBC应用程序接口是一种使用ODBC技术
实现应用程序与数据库互连的标准接口
它也是我们数据库与客户端应用程序进行交互的标准接口
ODBC驱动程序管理器
用于管理系统中的各种驱动程序
我们下面看一下各种驱动程序的一些功能和作用
第一 驱动程序是一个用于支持ODBC函数调用的模块
通常是一个动态链接库
也就是驱动程序是以动态链接库的形式提供给开发者
第二 不同的数据库的驱动程序是不同的
每种数据库都要向ODBC驱动程序管理器注册它自己的驱动程序
第三 驱动程序建立与数据源的连接
第四 向数据源提交请求
第五 应用程序需要时
可以实现数据格式的转换
第六 返回结果给应用程序
结果是从数据库查询处理的结果提交给应用程序
第七 如果运行出现错误时
它会将运行错误信息以一定的格式反馈给客户端的程序
第八 它可以定义声明和处理游标
也就是数据库驱动程序可以对游标进行声明和处理
下面看一下数据源
数据源的功能主要是
第一 数据源是驱动程序与数据库系统连接的桥梁
第二 它不是数据库系统
而是用于表达ODBC驱动程序与数据库系统的特殊连接的命名
第三 在连接过程当中
用数据源名来代表用户名 服务器名 连接的数据库名等
也就是数据源要包含用户名 服务器名 连接的数据库名字
第四 可以将数据源名看成是与一个具体数据库建立的连接
第五 创建数据源最简单的方法
是使用Windows的ODBC驱动程序管理器
也就是操作系统给我们提供了驱动程序管理器
下面是数据库管理系统DBMS
是用户向各数据库厂商购买的管理数据库的管理软件
是管理数据库的系统软件
用户可以在数据库管理系统上执行SQL语句
可以创建数据库 数据库表以及视图
同时可以使用SQL语句对数据库进行权限管理
下面是数据库层用户创建的数据库
用于存储用户数据 对象
下面我们介绍应用程序使用ODBC访问数据库的步骤
1、首先必须用ODBC管理器注册一个数据源
2、管理器根据数据源提供的数据库位置
数据库类型及ODBC驱动程序等信息
建立起ODBC与具体数据库的联系
数据库的位置一般用数据库所在服务器的IP地址来表示
第三 应用程序只需将数据源名提供给ODBC
ODBC就能建立与相应数据库的连接
这样 应用程序就可以通过驱动程序
管理器与数据库交换信息
第五 驱动程序管理器负责将应用程序对ODBC
API的调用传递给正确的驱动程序
第六 驱动程序在执行完相应的SQL操作后
将结果通过驱动程序管理器返回给应用程序
下面我们介绍用ODBC管理器配置数据源的方法
首先必须在数据库厂商的官网下载
与你的数据库对应的驱动程序
比如说我们要下载PostgreSQL 64位数据库驱动程序
它的名字为psqlodbc_x64.msi
下载之后我们执行psqlodbc_x64.msi驱动程序
安装PostgreSQL数据库驱动程序;
安装完成之后
打开windows 7的ODBC管理器进去之后
有一个ODBC数据源管理器里面有一个Driver菜单
我们就能看见PostgreSQL的驱动程序的安装情况
我们通过这个图就可以看出
这里用红色的框标出来
使用ODBC管理器就可以配置数据源
配置数据源的tab表是System DSN
要配置如下几个
要配置Data Source 数据源名
还有要指定数据库的名字
同时要指定数据库所在的服务器
同时要指定TESTDB数据库的用户MYuser
myuser用户是在数据库里提前创建好的用户
后面要指定口令password
设置好这些参数之后
然后 我们就可以点击test
测试我们连接是否成功
如果说配置正确 将会连接成功
-1.1 数据库及其系统概念
-1.2 数据库技术发展
-1.3 数据库应用系统
-1.4 典型数据库管理系统
-1.5 PostgreSQL对象-关系数据库系统软件
-第1章 数据库系统概论--本章单元测试
-2.1 关系及其相关概念
-2.2 关系模型原理
-2.3 PostgreSQL数据库关系操作实践
-第2章 数据库关系模型--本章单元测试
-3.1 SQL语言概述
-3.2 数据定义SQL语句
-3.3 数据操纵SQL语句
-3.4 数据查询SQL语句
-3.5 数据控制SQL语句
-3.6 视图SQL语句
-3.7 PostgreSQL数据库SQL实践
-第3章 数据库操作SQL语言--本章单元测试
-4.1 数据库设计概述
-4.2 E-R模型方法
-4.3 数据库建模设计
-4.4 数据库规范化设计
-4.5 数据库设计模型SQL实现
-4.6 基于Power Designer的数据库设计建模实践
--4.6 基于Power Designer的数据库设计建模实践
-第4章 数据库设计与实现--本章单元测试
-5.1 数据库管理概述
-5.2 事务管理
--5.2 事务管理
-5.3 并发控制
-5.4 安全管理
-5.5 数据库备份与恢复
-5.6 PostgreSQL数据库管理项目实践
-第5章 数据库管理--本章单元测试
-6.1 数据库连接技术
-6.2 数据库存储过程
-6.3 数据库触发器
-6.4 数据库游标
-6.5 嵌入式SQL编程
-第6章 数据库应用编程--本章单元测试
-7.1 NoSQL数据库概述
-7.2 列存储数据库
-7.3 键值对数据库
-7.4 文档型数据库
-7.5 图形数据库
-7.6 HBase数据库项目实践
-第7章 NoSQL数据库技术--本章单元测试
-期末测试--期末测试