-
本科毕业设计(英文文献翻译)
数据库用户接口
有能力的数据库应用
设计者和创建者总是被当作公司或者商业的巨大资产,
并且应当这样。在用户需要通过局
域网、广域网或者因特网交互数据时,这些人
能够解决许多关键性的问题。如果你已经构
建起数据库系统,剩下的就只是如何
构建接口来让用户与这些系统进行交互。还有一些其
它方面你需要了解,例如:
设计一个适合三层构架的系统,这些将在以后讨论。当今的银
行、商店以及许多
企业的日常工作都是基于一定数据库系统来完成。如果没有数据库系统
,它们将
不能有效地运转。这就是开发者发挥他们才能和不可或缺作用的地方。为了能够
绑定一个用户接口,如果可以的话,也可以绑定其他相关商业部分,数据源是很
有价值的一个资本。想想最近一次你使用应用程序,也许是一本雇员电话本、顾
< br>客数据库、清单程序,或者是财政程序,想想它们如何收集数据并且用一种友好
的
方式展现给你。一旦能够建立这些形式的应用,就拥有了能够很容易地进行信
息处理的潜
能,能够给整个公司带来利益,这就是为什么程序员成为如此珍贵资
本的原因。
当今的许多公司都雇佣一个个人或者
群体专门进行已存在的数据库的管理—
即就是数据库管理员(
D
BAs
)—并且拥有一组单独的开发人员,他们的任务是进
行自
己应用程序的创建。但是,作为数据库开发者的你常常兼有这两方面的工作,
所以你需要
深入了解这两个任务。数据库管理员的职责包括:
?
数据库构架知识和如何高效地运用和存储信息。
?
使数据库能够正常运行的能力。
?
洞察公司在成长和扩大中的需求变
化的能力—现在的数据库框架能否处
理十倍甚至百倍数量级的信息而保持高效率?
?
当进行用户接
口设计时有一套逻辑方法,屏幕按一种用户能够理解的方式
进行组织—例如相关组进行控
制,比如用户和地址字段。
?
与用户紧密地工作来设计这些系统的能力。
在进行客户—服务器应用程序时这些将会有帮助。当我
们开发数据库时我们
需要考虑诸如:效率、灵活性、处理多用户、数据锁定、数据增长、
完善性和性
能等。开发可户端应用程序的人员需要像考虑程序性能和效率一样考虑用户接
口
界面。拥有一个聪明的想法:知道用户将会如何与数据库系统进行交互将会帮你
决定如何设计它。用户在运行任务时总是按一定的顺序运行特定的程序,某些任
务比其他的要用的多。例如,如果你在设计一套储备清单程序,你也许想让你的
系统在开启时显示能让用户更改清单的界面,而不是添加新产品行。
1
本科毕业设计(英文文献翻译)
在这章中,我们将来看看为一个
SQL
数据源建立一个基本用户接口的重要基
本。我们也将看看当你建立一些更老练的数据库
应用时所应该应用的一些好的实
践。下面就是我们为此目的而要覆盖的主题:
?
一个用来访问数据库的简单用户接口
?
怎样填充一个
DataGrid
?
运用向导
?
幕后产生的代码
?
一般用户接口设计的好的实践
1
用户接口
既然你已经学会了怎样运用合适的
SQL
语句来设计数据库并且更新数据库里
的信息。我们不能等待我们的用户去开发一套数
据库管理工具并且像这样来操纵
数据,因此,我们下一步就是要创造某种途径来让用户去
访问信息。这就是用户
接口的作用—提供一种用户和数据库的通信手段。
通过用户接口,用户可以与数据交互并且操
纵它来完成一定的任务,比如:
查看、添加、更新或者删除细节。用户接口和数据库亲密
地进行工作,并且正确
结合,用户能够不用任何特殊的技术知识而处理大量的信息。
p>
需要某中思考过程或者方法来为
接口提出一种好的设计:我们想建立一个一
致并且和谐的界面以便这个接口对将要用它的
用户来说是容易接近的。我们应该
知道现存的数据逻辑,当让用户进行像添加和删除信息
时保证这些动作是正确的,
防止用户不经意的操纵数据造成一些对企业来说不可恢复的损
失。安全性和数据
完整性很重要,因为它们提供了机制来保证用户不能调整他们自己财产
的平衡,
修改他们自己的奖金,或者查看甚至修改其他用户的信息。我们需要一种方法来
隐藏幕后的制衡。这些中的许多都可通过好的框架设计来完成,来造成一种能够
访问、使之有效并且保护这个信息,或者通过框架后的代码或者让这些框架去调
< br>用另一个对象。还有一种可能性是一个恶意的用户可能会完全饶过这些模型,并
且
尝试着去直接访问数据库,因此严密的安全是非常重要的。为了达到这个目的,
我们的模
型应该制作成一个带有保密用户
ID
和密码的数据库,我们能
通过存储过
程隐藏我们的制衡信息—也就是存储在数据库服务器端的程序。这些存储过程
能
履行一些基于已通过参数的标准,并且只有当正确的安全信息通过时才返回信息。
p>
所有的这些都是通过商业规则来完成的,这些规则提出这样的要求:数据在特殊
的与我们的生意有关时如何维护。
既然我们已对与用户接口相关的问题了解了一部分,我们可以继续来看看我
们怎样在
Visual Basic .NET
里创建一
个接口。这个应用程序的基本要素是窗体框
架,它们可以被看作是一个等待被画入的白布
。我们可以在这个框架中放置控件
来为我们的接口设计一种有逻辑性的界面,并且为用户
提供一种自然而简单的途
径来让用户与数据库交互。
2
本科毕业设计(英文文献翻译)
2
概述
在我们开始创建我们的应用程序之前我们需要来学习一下我们的应用程序将
要用到的一些
基本要素和向导。我们将在下一章中更详细地描述
,因此,现在我们将仅学习一下基本来使我们通过这个简单的数据库工
程。
提供给我们一种收集数据
和信息并且通过一个用户接口展示数据的
方法。通过运用一些要素,我们能够联系上各种
数据源然后创建一个访问数据库
的用户接口。
我们需要四个部分来创建我们的
工程。
1.
一个数据源—真正的数据被存储的地方,我们的数据库
2.
一个
Connection
p>
对象—来将我们联系到我们的数据库
3.
一个
DataAdapter
对象—来
创建一种读取和向数据库中写入的机制
4.
一个数据集对象—它将包含我们将要用到的表
p>
首先,我们需要一个与数据源的连接,被一个
Connection
对象所提供。该对
象要求一定的信息来与数据库连接。
Connection
对象被
DataAdap
ter
对象所调用,
DataAdapter
< br>对象处理命令来对数据源进行选择、更新、插入和删除数据。最后,
我们有一个<
/p>
DataSet
来装入我们的表并且它通过
DataAdapter
填充自己并且对数据源
中的数据进行
更新。
一、数据源
数据源是描述提供给我们数据的任意信息集合的规定。它可能采取数据库
,
XML
文件的形式
,
报表
,
甚至一个文本或二进制文件。
它只采取一两个代码行使
我们改变我们连接的数据源。
Wind
ows
环境提供我们公共类用于我们的程序用相同
的代码与不同
的数据源通信。
二、数据连接
我们连接数据库的第一件事是数据连接对象。它引用二种形式
-
SqlConnection
或
OleDbConnection
对象。就像我们操作
SQL
服务器引擎
,
我们将使用
SqlConnection
对象。
当我们使用
< br>SQLConnection
对象创建连接时,我们需要使用下面的连接参数:<
/p>
?
数据源<
/p>
--
数据源被放置位置的服务器名字。
数
据源可能被放在任何地方
,
可
能是在
网络或互联网上。
通常
,
您使用你的
本地网络,
你便需要存放数据源的专门
计算机名字。我们也可用
localhost
或
(local)
来代替我们运行程
序的计算机。这项
术语,当它作为当前,本地计算机时,由许多
Windows
应用使用。
?
用户标识和密码
< br>--
连接数据源所需要的认证,用户标识和密码是由数据库
管理员建立的,他防止其他用户在未经允许的情况下查看或更改数据库。
?
初始化日志—这是我们想要与之工作的数据库。
为了创建一个新的连接,
我们
声明一个新的
SqlConnection
并且运用以下所示
3
本科毕业设计(英文文献翻译)
的这
些参数设置
ConnectionString
属性:
Dim
myConnection As New nection()
tionString =
Catalog=NorthwindSQL;User
Id
=sa;Password=sa;
或者,我们可以将连接串作为一个参数传递给
SqlConnection
,如下所示:
Dim myConnection As New nection(
_
Id=sa;Password=sa;
创建一个新的
OleDbConnection
对象是简单的,除非我们同时需要一个提供
者参数来描述我们正在连接的数据
源的类型。因此,为什么我们不需要那个与
SqlConnection
对象相关的参数?你已经掌握它了—因为提供者类型将会一直是
SQL
p>
并且,实际上如果你真的试着将提供者参数设置为
SqlConne
ction
对象,你
将会出错。
现在我们可以来看看这个需要一个数据连接对象来建立
以便能运转的要素,
即就是
DataAdapter
。
三、
DataAdapter
DataAdapter
是位于数据源和数据集之间的一种机
制。我们拥有两种类型的
DataAdapters
:
SqlDataAdapter
,
专
门
为
SQL
Server
数
据
< br>库
所
使
用
;
OleDbDataAdapter
,被所有的数据源所使用并且通过另外一个被称为
OLE DB
的
层。因此,通过防止这个额外层的需要,
SqlDataAdapter
提供更快数据的访问。
OleDbDataAdapter
可以被用来访问
SQL Server
,但是,因为它通过
OLE DB
层,
如果你打算就用
SQL
Server
而不是任何其他的,为了达到最好性能你将被建议保
持和
SqlDataAdapter
一致。这适合这章中
的简单数据库应用程序,因此我们严格
与
SqlDataAda
pter
一致地工作。
DataAdapter
允许进行选择、更新、删除或者向数
据源中插入数据。这些方法
通过使用
SelectComman
d, UpdateCommand, InsertCommand,
和
DeleteCommand
属
性来设置为了特定
操作所需要的数据库命令字符串来实现。这些属性中的每一个
都是一个命令对象的例子,
它们的工作即就是执行一个
SQL
语句或者存储过程并
且返回一个结果集。对一个
SQL
数据库来
说,命令对象将保持着为规定操作实际
所需的选择、更新、插入和删除语句,比如:
p>
或者
。
命令对象还存储着连接信息
因此它能够连接上数据库来执行它所包含的
p>
SQL
语句。在此指出,在我们简化了
的
例子中,我们将仅用
SelectCommand
工作因为我
们只需要从我们的数据库中选
择信息来进行查询。
因为我们和一个
SQL
数据库打交道,我们将利用
SqlCommand
对象(和
4
本科毕业设计(英文文献翻译)
OleDBCommand
对象相对应)。当我们利用
DataAdapter
向导时,对每个表来说
你都将有一个对应的
Da
taAdapter
。
当我们
运用向导时,为了使选中的表能够拥有所有的对其更新和恢复信息,
DataAdapt
ers
被特别配置。为了对另外一个表重用它,我们主要需要重建组成
DataAdapter
的对象,这意味着所有的命令对象都要被重建。简单
的解决方案是每
个表分配一个
DataAdapter
,
这样帮助你让你的代码保持整洁并且容易维护。
当你
建立一个
DataAdapter
< br>时,
如果需要你可以明确指定多于一个表。
比如,
我们可以
创
建
一
p>
个
联
系
顾
客
表
和
订
购
表
的
DataAdapt
er
—
来
使
我
们
能
够
只<
/p>
用
单
个
Data
Adapter
就能从两个表中查看信息,而不需要任何的代码来连接它们。但是,<
/p>
当遇到更新信息时,这种将多个表连接成一个表视图的方法就运行的不是很好,
因为
DataAdapter
向导不能够适当将
表连接起来来串联更新和删除,
强化了一个表
一个
DataAdapter
的情况。
四、数据集
最后,一个数据集是表的一个容器或者集合;它能够包含一个或者多个表并
且在
主存中被维护。表间关系也被保存在这里。它所保持的表将诸如顾客详细情
况或产品信息
的信息以记录或行的格式包含在一起。一个表可能包含几千个这样
的行。
一个有用的说明是将一个数据集想象为保持
一个书籍出版者的细节。一个有
技术的出版者可能以几种类别发布书刊,比如像
.NET,JAVA,ASP
和
C++
。在每个
类型中都是单独的书刊—因此一个
.
NET
类型应该拥有像专业版
,基本
,专业
C#,
和引领
.NET
。一张表应
能代表这些种类中的一种,并且一个
类型内的每本书应该被适当的表中的一行所代表。每
一行保持着每本书的细节—
例如:标题、价格、
ISBN
编号、出版日期和页数等。
对于你能向数据集中存储的信息类型并没有限制。既然我们已经了解了一个
数据集的内部细节,就让我们来看看怎样在一个应用程序中应用一个数据集。
对我们的程序来说,我们将需要建立一个
SqlDataAdapter
对象来从向导数据
库中通过一个
SqlConnection
对象选择顾客记录
。
这个连接将被仅仅维持完成
SQL
选择操作的时间。我们将通过运用
SqlDataAdapter
对象把我们的顾客表中数据填
充到我们的数据集中。连接,或者数据绑定,对诸如<
/p>
DataGrid
控件的可视化控件
将
会在窗口模型中展示数据集中的内容。
现在我
们可以在我们简单的数据库应用程序中执行这些控件。下面是以下任
务的一个概述:
p>
?
创建一个窗口应用程序
?
与一个数据源建立连接
?
向我们的框架中添加一个
DataAdapter
?
从
DataAdapter
产生一个数据集
5
本科毕业设计(英文文献翻译)
?
向我们的框架中添加一个
DataGrid
控件
?
在我们的
DataGrid
中显示顾客表的内容
我们以创建一个新的
Visual
Studio
.NET
应用程序然
后再向工程中添加一个
SqlDataAdapter
作
p>
为
开
端
。
我
们
仍
然
需
要
为
DataAdapt
er
创
建
一
个
与
NorthwindSQL
数据库联系的连接。从
SqlDataAdapter
我们将创建一个新的数据
集。一旦我们有了数据集,我们将向我们的框
架中添加一个
DataGrid
并且将数据
< br>集和它绑定。最后,我们将添加一个按扭来将顾客记录填充到数据集中,并且在
D
ataGrid
中展示出来。
Visual Studio .NET
的配置向导为我们提
供了一个简单的方法来做这些。现在
我们离创建我们的数据库应用程序只有一点点距离了
!
3
数据访问简史
数据访问方法自从
Microsoft Access 1.0
和
Visual Basic 3.0
时就存在了。
数据
库存取工作利用
V
isual Basic
变得很容易,
好象他们仍然在为简单
桌面应用程序做
工作。
Visual
Basic
中的第一
个数据模型被称为数据访问对象(
ADO
),在
Visual
Basic
3.0
中介绍。它能够与
Microsoft
Access
和其他类型的数据库交互,尽管它
对于你的台式计算机来说很好用。它很容易被用因为它提供了简单的数据访问方
法和工具,从
Visual Basic IDE
环境而来
,比如说数据绑定控件。这些工具和大量
的诸如书籍和技术报告之类的资源,意味着你能
够紧接着很快使一个数据库应用
程序运转起来。
Visual
Basic
环境和一个数据管理者连接在一起,这个管理者允许
创建和管理数据库存取,并且,当你将你的应用程序分散时,创建进程允许对任
何需要
的数据访问图书馆进行简单选择。它仍然允许你写入并运用一套代码来访
问不同的数据源
,因为,只有一件事改变,即你所想连接到的数据源的类型。这
些数据源主要是非关系数
据库。
非关系数据库通常是作为连续二进制流存储的平文件。
ISAM
(索引顺序存取
方法)数据库运用这
种类型并且提供一种控制计算机怎样访问存储在硬盘上记录
和文件的途径。数据被连续地
存储,直接访问一个具体的记录需要运用索引。这
些文件的结构十分复杂。很多读取这种
类型数据的引擎,在访问记录时非常的迅
速而有效,因为不需要通过多余的层,并且他们
可以直接访问数据。这样隐藏着
一个不好的方面,即它们缺乏任何安全机制来保护数据,
任何人都可以进入查看
或者编辑数据库中信息,并且也没有历史事务被维持来记录是谁、
什么或者什么
时候记录被改变了。这种系统不是为多服务框架而设计的,在多服务框架里
进程
可以被分开来使顾客计算机做很多的数据进程工作。它们对多用户环境的适应力
p>
很差,并且也不提供固有的机制来阻止用户同时进行的相互有影响的改变操作。
作者:里克特
.J
来源
:
《深入理解
.net
》
6
本科生毕业设计(英文文献)
The User Interface for the Database
Capable database
application
designers
and builders
are invariably
considered
a
great asset to a company
or business, and rightly so. Such people are able
to solve a
number of problems in
situations where users need to interact with data
be it accessed
over a
LAN,
WAN, or the
Internet. Once
you have acquired the knowledge to
build
database
systems,
there
really
only
remains
the
know-
how
to
build
an
interface
that
allows users to talk to these systems.
There are other aspects of development you need
to be aware of, for instance designing
a system geared towards a three-tier architecture,
and these will be discussed , stores,
and most businesses today all depend
on
some type of database system for their day-to-day
operations and, without it, they
would
no longer be able to run efficiently. This is
where you as the developer have a
crucial
role
to
play.
To
be
able
to
tie
a
user
interface,
and
other
related
business
components if
desired, to a data source is a valuable asset.
Think of the last application
you
used
around
your
office,
perhaps
an
employee
phonebook,
customer
database,
inventory program,
or finance program, and how they all gathered data
and presented it
to you in a friendly
manner. Being able to build these types of
application, that have
the potential to
make dealing with information so much easier, can
bring great benefits
throughout
a
company,
and
so
it
is
that
such
programmers
become
highly
valued
assets.
Many
companies nowadays employ a person or group solely
for the management
of existing
databases
–
the database
administrators (DBAs)
–
and
have a separate team
of developers
whose job it is to build the applications
themselves. Often, however, you
as
the
database
developer
will
be
playing
both
roles,
and
so
you
will
need
a
basic
understanding of both tasks. The DBA's
responsibilities include:
?
Knowledge
of
the
structure
of
the
database
and
how
to
use
and
store
information in an
efficient manner
?
The
ability to normalize a database, as talked about
in the Chapter 1
1
-
-
-
-
-
-
-
-
-
上一篇:文献翻译
下一篇:密码学的基础知识英文翻译