SQL 第15章 数据库实际应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14
在“名称”输入框中输入新数据源的名称,这个名称将被 要访问数据库的应用程序使用。在“说明”中可以输入对 该数据源的说明文字。在“服务器”下拉框中选择需要连 接的SQL Server数据库服务器名称,如果没有显示服务器 名称,可以手工输入。点击“下一步”,系统显示如图 15-6的“建立新的数据源到SQL Server”的窗口。
8
15.1.3 使用ODBC连接SQL Server数据库
1. ODBC简介 开放式数据库连接(Open Database Connectivity, ODBC) 是一种标准的数据访问途径,包含在所有Microsoft Windows 操作系统中。虽然Microsoft公司对Windows不同版本中 ODBC的一些接口有一些增减,并且推出了可取代它的其它 技术,但是,ODBC在客户端和服务器组件中仍然是一种数 据库访问的有效解决方案。 对于应用程序开发人员而言,ODBC是一个过程化的数据访 问接口。ODBC的先进之处在于它能通过相同的API和SQL语 法访问不同厂商的数据库。使用ODBC,用户不必像嵌入式 SQL一样使用厂商的专用工具来写代码,或者针对所有需要 支持的SQL数据库而编写众多客户端版本。
18
为了在数据库应用程序中显示数据,将用CRecordview对象 替代AppWizard应用程序中的常规窗口。—个CRecordView 窗口类似于应用程序中用于显示的对话框窗口。这个窗口保 持与应用程序的CRecordset对象相连接,并能够在窗口控件 和记录集合之间传送数据。当我们使用AppWizard创建一个 新的数据库应用程序时,必须向CRecordView窗口添加各种 合适的编辑控件。这些编辑控件必须与它们将要显示的数据 库字段绑定,以便应用程序知道在什么地方显示需要观察的 数据。 用VC创建一个ODBC数据库应用程序,首先要在系统中使用 ODBC管理器注册数据库,也就是前面讲解的增加数据源。 然后使用AppWizard创建基本的数据库应用程序,VC将自动 产生一些基本的代码。最后,向基本数据库应用程序中添加 代码,以便实现AppWizard不能自动支持的一些数据库特性。 本节首页
9
为达到与目的数据库的无关性, ODBC采用四层的体系结 构,包括客户端、驱动程序管理器、数据库驱动程序和数 据库服务器本身。这些构件形成一条管道使命令能从客户 端到达服务器,并使状态报告和数据返回给客户端, ODBC体系结构如下图15-2所示。
客户端应用程序 ODBC定义接口 驱动管理器 ODBC定义接口 数据库驱动程序 专用通信协议 数据库服务器
17
3. Visual C++ 的ODBC类 当用Visual C++ AppWizard创建数据库程序时,将产生一 个建立在各种ODBC类之上的应用程序,这些类已包含在 MFC中,在这些类中,重要的有CDatabase、 CRecordset和CRecordView。 AppWizard自动地生成创建一个CDatabase类对象所需要 的代码。这一对象表示了应用程序与要访问的数据源之间 的连接关系。在大多数情况下,在用AppWizard生成的程 序中采用CDatabase类对程序员来说是透明的。 AppWizard也可以生成应用程序中所需要的CRecordset对 象的代码。CRecordset对象表示当前从数据源中选择出来 的实际数据,它的成员函数处理来自数据库的数据。
11
在Windows NT和Windows 9x的“控制面板”中或 Windows 2000的“控制面板/管理工具”中启动“ODBC 数据源管理器”管理程序。其运行界面如下图15-3所示。
12
ODBC管理器中有七个选项卡,前三个是配置三种类型的数据源, 后四个是对整个系统的配置。“驱动程序”:用于显示用户系统中 已安装的所有数据库驱动程序,可以根据其中的信息检查是否有我 们需要的驱动程序;“跟踪”:用于控制ODBC跟踪行为,该特性 对调试和性能检测很有用;“连接池”:可以根据客户端应用程序 与数据源的连接情况,重用数据连接,从而节省系统资源。 配置系统数据源与配置用户数据源的操作相似。点击“用户DSN”或 “系统DSN”,然后,点击“添加”按钮,开始添加一个新的数据源, 这时,系统弹出如图15-4所示的“创建新数据源”的对话窗口。
7
如果已经安装了ADO或是使用Windows 2000操作系统,那么, ADO对象的相关信息就已经注册在系统中了。如果还没有安装 ADO,那么可以到Microsoft的网站下载最新的ADO版本安装。 一旦系统中安装了ADO,它将以ActiveX控件形式提供给开发工 具使用,ActiveX控件也称之为ADO数据控件。 ADO 应用程序通过 OLE DB 提供程序访问数据。Microsoft SQL Server 2000 包含用于 SQL Server 的本机 Microsoft OLE DB 提 供程序,可由 ADO 应用程序用于访问 SQL Server 中的数据。 如果对SQL Server 进行通用数据访问,建议首选 ADO API,原 因如下: • ADO 易于学习和编程 • ADO 具有大多数通用应用程序所需的功能集 • ADO 使程序员能够快速生成功能强大的应用程序 • wenku.baidu.comDO 支持 SQL Server 2000 的 XML 功能 本节首页
6
表15-1 ADO编程模型关键对象描述
对象名 Connection Command Recordset Parameter Error Field 描述 连接数据源 从数据源获取所需数据的命令信息, 一般是SQL语句 所获取的一组记录组成的记录集 与命令对象相关的参数 在访问数据时,由数据源所返回的错 误信息 包含了记录集中某个字段的信息
15
可以根据需要选择使用Windows NT验证还是使用SQL Server验证。点击“客户端配置”可以配置客户端连接服 务器使用的通讯协议和端口。选择“连接SQL Server以获 取其它选项的默认配置”复选框,将会在进入下一步操作 前使用选项下方输入框中输入的用户名和密码连接到SQL Server服务器。如果服务器没有启动或者在上一步操作中 输入的服务器名称不正确,或者网络连接存在故障都会显 16 示错误提示框,并且不能进入下一步操作。
5
15.1.2 ADO简介
ADO(ActiveX Data Object)数据访问接口使得程序设计者只 要简单地创建几个对象便可以连接数据来源、获取所需的数 据和进行数据访问后的保存操作。ADO对象模型定义了一个 可编程的分层对象集合,主要由三个对象成员:Connection (连接)对象、Command(命令)对象和Recordset(记录 集)对象,以及几个集合对象:Errors(错误)、 Parameters(参数)和Fields(字段)等所组成。图15-1表 示了这些对象彼此之间的关系。
10
驱动程序接口
2. 配置ODBC数据源 为了连接到SQL Server数据库服务器,必须在ODBC中配 置SQL Server数据源。数据源存储了如何与指定数据库提 供者(如SQL Server)连接的信息。数据源名(DSN)是 用文本关键字标识应用程序将要使用的连接记录,它有三 种类型:基于文件的、系统的和用户的。 系统DSN对于同一计算机或服务器上的所有用户都是可用 的,而用户DSN只能被当前登录的用户管理和使用。文件 DSN是以INI文件形式存储的数据源配置,它可以存放在本 地磁盘中或网络映射驱动器中,可以被安装了相同ODBC数 据库驱动程序的所有用户共享。
Microsoft SQL Server 2000提供了多种API,它使得其它应 用程序能够访问数据库资源,这些API被称为数据库访问 API。数据库访问API允许应用程序执行一段T-SQL语句来 访问一个关系数据库的数据,它以平面结果集(行集)或 XML文件为应用程序返回结果。这些API有:ADO、OLE DB、ODBC、嵌入式SQL和DB-Libray等。 ADO数据访问对象是一组自动化对象,它使用 OLE DB API, 并使应用程序得以使用来自 OLE DB 数据源的数据。这包 括以许多不同格式存储的数据,而不仅仅是 SQL 数据库中 的数据。Visual Basic、Visual C++、和Visual FoxPro都可 以使用 ActiveX 数据对象 (ADO) API来编写数据库应用程序。 ADO数据访问对象的主要优点是易于使用、高速度、低内 存支出和占用磁盘空间较少,同时具有远程数据服务(RDS) 功能。 4
OLE DB是访问数据库底层COM的应用程序接口。它适合于 开发高性能的工具、实用程序或底层组件。 ODBC是一个标准的访问数据库的编程接口。通过它应用程 序可以与SQL Server进行通信。在安装SQL Server客户端的 同时,安装程序将安装一个SQL Server的ODBC驱动程序在 系统中,以提供给其它应用程序或开发环境使用。 嵌入式SQL允许在程序代码中直接使用T-SQL语句。它可以 用于移植已有的其它数据库应用程序到SQL Server数据库上。 DB-Libray是一组由C语言函数和宏定义组成的、用于访问 SQL Server的API库文件。开发MS-DOS版本的SQL Server 数据库应用程序时需要用到它。 另外,其它一些公司的集成开发环境也会提供自己的数据库 访问接口,比如Inprise公司(Borland公司)的数据库引擎 Borland Database Engine(BDE)。该公司著名的Delphi和 C++ Builder开发环境在访问数据库时都需要使用该接口,并 且BDE可以直接引用ODBC的数据源定义。 本节首页
2
15. 1 应用程序访问 应用程序访问SQL Server数据库 数据库 15.1.1 SQL Server数据库访问应用程序 接口(API) 15.1.2 ADO简介 15.1.3 使用ODBC连接SQL Server数据 库
本章首页
3
15.1.1 SQL Server数据库访问应用程序 数据库访问应用程序 接口( 接口(API) )
返回目录
15. 1 应用程序访问 应用程序访问SQL Server数据库 数据库
在实际的数据库应用系统中,一般不会使用SQL Server 2000作为用户界面,让每一个用户都去学习T-SQL语法和 企业管理器的操作是不现实的。SQL Server本身是作为一 种数据库服务而存在的,必须使用其它的开发环境为应用 系统设计处理逻辑和用户界面。另一方面,实际应用中很 可能会需要从其它数据库系统中获取已经存在的数据,或 者把SQL Server数据表的数据使用到其它数据库系统或实 用软件中,使用SQL Server 2000的导入导出功能可以完 成这样的任务。本章的主要内容如下: 在应用程序或开发环境中连接SQL Server数据库 SQL Server数据表的导入与导出
第15章 SQL Server数据库实际应用 章 数据库实际应用
15. 1 应用程序访问SQL Server数据库 应用程序访问 数据库 15. 2 使用 使用ADO数据控件访问 数据控件访问SQL Server数 数据控件访问 数 据库示例 15. 3 使用 使用ODBC接口访问 接口访问SQL Server数据库 接口访问 数据库 示例 15. 4 数据导入与导出数据
选择“更改默认的数据库为”复选框,在下方的下拉框中选 择当前连接的SQL Server数据库服务器中的一个数据库作 为默认数据库,这样,连接数据库的客户端应用程序就将选 中的这个数据库作为默认的使用数据库。点击“下一步”, 再点击“完成”,此时系统将显示如图15-8的 “ODBC Microsoft SQL Server安装”的对话框窗口,该窗口显示了 对这个新数据源主要的连接描述,点击“测试数据源”,可 以测试新数据源是否正确地连接到SQL Server数据库。
13
在驱动程序列表中选择“SQL Server”驱动程序,表明将 建立一个访问SQL Server数据库服务器的连接。点击“完 成”后系统显示“建立新的数据源到SQL Server”向导对 话框,如图15-5所示。根据选择的驱动程序不同,ODBC 管理器将显示不同的建立数据源向导,此后的建立操作会 有所不同。