⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 结合sql server 7.0使用visual studio 6.0数据库工具.htm

📁 平时搜集的数据库操作文档
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0052)http://www.ithome-cn.net/technology/data/data016.htm -->
<HTML><HEAD><TITLE>结合SQL Server 7.0使用Visual Studio 6.0数据库工具</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<STYLE type=text/css>.10V {
	FONT-SIZE: 9pt; COLOR: #0000ff; FONT-FAMILY: 宋体; TEXT-DECORATION: none
}
.12V {
	FONT-SIZE: 12pt; FONT-FAMILY: 宋体
}
</STYLE>

<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<P><STRONG><FONT color=#0000ff size=2>[<A 
href="http://www.ithome-cn.net/technology/data/dalist.htm">返回</A>]<BR></FONT><FONT 
color=#800000 size=2>中国计算机报1999年第75期</FONT></STRONG></P><FONT color=#0000ff>
<H2 align=center></FONT><FONT color=#008080 size=3><STRONG>结合SQL Server 
7.0使用Visual Studio 6.0数据库工具</STRONG></FONT></H2>
<P align=right><FONT color=#008080 size=3><EM>李奇威</EM></FONT></P>
<P><FONT color=#0000ff size=2>  本文介绍了如何使用Microsoft SQL Server 7.0和Visual Studio 
6.0数据库工具分析来自不同数据库系统的数据。在查询设计中可以通过链接服务器属性访问外界OLE 
DB数据资源;使用Top语句来限制要返回的数据;通过文件组来提高数据库的执行和有效性;用Guid数据类型来生成惟一标识符。<BR><BR>  如果有一个跨国公司,它包括五个大的辅助部门和北美的总部,其辅助部门负责研究不同的产品,要你分析此公司的前50个收入来源。但是这六个部门(包括总部)使用了六种不同的数据库管理系统。例如,东京的部门将数据保存在一个Microsoft 
Visual Foxpro数据库里;伦敦的用Oracle数据库;布宜诺斯艾利斯将数据存储在Sybase系统中;总部和Johannesburg用Microsoft 
SQL Server数据库;堪培拉用第三方OLE 
DB系统。你怎样才能在总部把这些信息收集到一个报告里呢?<BR><BR>  这似乎是一件很辛苦的工作。但是用新的Microsoft SQL server 
7.0和Visual Studio 
6.0数据库工具,在查询设计中用链接服务器和Top属性,你就可以很轻松地完成此项任务。<BR><BR>  当然不止这几步,但关键是用Visual Studio 
6.0数据库工具,你可以享用一些SQL Server 
7.0的优点使你的企业数据工作更简单有效。<BR><BR>  准备工作<BR><BR>  如果你有以下这两种工具之一,你就可以应用本文介绍的方法:<BR><BR>  ● 
Microsoft SQL server 7.0和Visual studio 6.0数据库工具;<BR><BR>  ● 具有最新的客户工具的Microsoft 
SQL Server 7.0和Visual Studio 6.0数据库工具。<BR><BR>  如果SQL Server 
7.0被安装在一台服务器上,并且你的客户机上装有Visual Studio 6.0数据库工具,请在客户机上运行SQL Server 
7.0安装程序选择客户工具安装。如果你的机器上既安装了Visual Studio 6.0数据库工具又安装了SQL Server 
7.0,那么安装向导将会自动更新你的数据库工具。<BR><BR><BR><BR>  访问外部OLE DB数据资源<BR><BR>  要访问异种OLE 
DB数据资源处理企业数据工作,那么链接服务器特性就是个灵活有力的解决方法。<BR><BR>  链接服务器是用SQL Server 
7.0对外部数据对象和需要访问的那些数据信息的一种定义方法。这种定义包括四部分名称:外部数据对象服务器名称;包含对象的目录或数据库;对象或所有者的模式;对象名称(表或数据库的浏览)。这四部分的名称用的结构格式为:链接的服务器名称、目录、模式、对象名称。<BR><BR>  定义了链接服务器后,就能够以Transact-SQL语句用这四部分名称在链接服务器上查阅数据对象了。我们可以用Select、Insert、Update和Delete 
transact-SQL语句直接查阅外部数据源的表和浏览。<BR><BR>  这样,一个简单的Select语句就能用于刚才的跨国公司情况。可以这样访问数据:<BR><BR>  SELECT 
*FROM 
johann_sa.svs.dbo.products<BR><BR>  其中:johann_sa是位于Johannesburg辅助部门的服务器的名称、svs是数据库名称、dbo是对象所有者、products是表的名称。<BR><BR>  当客户请求执行一个分布式查询时,SQL 
Server对这个命令进行解析,并以基本的行集合表格发送请求,每行包含OLE DB数据列的行的集合。因为OLE 
DB提供者以行来组织它们的数据,因此它们知道当收到来SQL Server自行集合请求时该做什么工作。在数据库工具里可以SQL 
Pane方式来运用链接服务器特性。<BR><BR>  以跨国公司为例,为了访问来自辅助部门的服务数据库的产品表里的净收入信息, 
Select语句可以这样写:<BR><BR>  SELECT Prod.name, Prod.net<BR><BR>  FROM 
johann_sa.svs.dbo.products AS Prod<BR><BR>  WHERE date between '07/01/97' and 
'06/30/98'<BR><BR>  AND Prod.net &gt; 1<BR><BR>  ORDER BY Prod.net 
desc<BR><BR>  结果集合将列出由Johannesburg辅助部门在1998年6月30日财政年度的所有产品交易中价值高于1000000美元的净收入。产品将按照净收入从高到低的降序排列。<BR><BR>  限制结果集合<BR><BR>  继续以上述情况为例。因为Johannesburg辅助部门覆盖非洲和中东,应当如何限定得到的数据列表呢?<BR><BR>  这也简单:利用TOP语句就可以实现。TOP语句用于限定你可能得到一个大的结果集合的列数的工具。用TOP关键字可以指定只想得到的结果集合中的前n个记录。用PERCENT关键字和TOP组合也可以得到想要的结果集合中的前百分之n条记录。这样你在SELECT语句中使用TOP就有两种方式:<BR><BR>  SELECT 
TOP n *<BR><BR>  SELECT TOP n PERCENT 
*<BR><BR>  接着,回到Johannesburg的查询,用TOP语句限制你的列表只有50行。查询语句如下:<BR><BR>  SELECT TOP 50 
Prod.name, Prod.net<BR><BR>  FROM johann_sa.svs.dbo.products AS 
Prod<BR><BR>  WHERE date between '07/01/97' and '06/30/98'<BR><BR>  AND Prod.net 
&gt; 1<BR><BR><BR><BR>  在有限的结果集合中排列行<BR><BR>  如果在用了TOP语句的SELECT表达式中指定ORDER 
BY,那么SQL 
Server首先按照指定排序建立整个查询结果,然后从建立的集合中取出前n行或前百分之n的结果。<BR><BR>  这样Johannesburg查询表达式:<BR><BR>  SELECT 
TOP 50 Prod.name, Prod.net<BR><BR>  FROM johann_sa.svs.dbo.products AS 
Prod<BR><BR>  WHERE date between '07/01/97' and '06/30/98<BR><BR>  AND Prod.net 
&gt; 1<BR><BR>  ORDER BY Prod.net desc<BR><BR>  SQL 
Server首先得到净收入大于1000000美元的所有产品,然后将它们按从大到小的顺序排列。当列表被排列之后,前50个被取出并返回到结果集合中。<BR><BR>  使数据库操作更有效<BR><BR>  当查询大型数据库时,执行性能很重要。SQL 
Server 
7.0在数据库工具中有两个新特性可以用来提高数据库操作。文件组可以加速数据库操作,GUID数据类型用于全局惟一数据库对象(在像跨国公司这样的企业项目中很有用)。<BR><BR>  改进对数据库的访问<BR><BR>  文件组是一个数据库文件存储管理机制,它允许在多个磁盘上创建数据库。<BR><BR>  当创建一个SQL 
Server 
7.0数据库时,程序自动指定所有文件到缺省文件组,除非你指定另外文件组为缺省文件组。但是,即使指定了一个不同的文件组为缺省的,所有数据库系统文件也必须保留在主文件组中。<BR><BR>  指向数据库文件的文件组属性记录这些文件,即使它们位于不同的磁盘。<BR><BR>  例如,把一个表指向一个文件组,但把表的索引文件存在另一个磁盘上。当访问数据表时,查询将涉及两个磁盘。因此,关于表的不同文件的几个查询将会同时发生,这样将加速查询结果集合的返回。<BR><BR>  用数据库工具,可以在Tables 
Property Page(属性页)中指定Table(表)和Text(文本)文件组,在Indexes/Keys Property Page 
(索引/键值属性页)中指定索引文件组。<BR><BR>  当开始计划数据库文件组属性时,务必记住:<BR><BR>  ● 
文件组不能独立于数据库文件而创建;<BR><BR>  ● 一个文件组不能用于多于一个数据库上;<BR><BR>  ● 
任何时候只有一个文件组能成为一个数据库缺省文件组;<BR><BR>  ● 一个文件只能成为一个文件组的成员;<BR><BR>  ● 
一旦某个文件被加到数据库并指向一个文件组,你就不能把这个文件移向另一个文件组;<BR><BR>  ● 
系统对象和文件永远指向主文件组。<BR><BR>  确保数据对象的惟一性<BR><BR>  当处理被多地点使用的大型数据库时,就像跨国公司的情景。也许会遇上确保表对象惟一性的问题。在此情况下,Uniqueidentifier也许正是解决方法。Uniqueidentifier是一个GUID数据类型,它存储了全局惟一标识符。一个GUID是一个为确保惟一的二进制数,因此其它的计算机不能生成同样的数值。<BR><BR>  GUID的惟一值是由计算机网卡的识别数字加一个来自CPU时钟的惟一数值生成。<BR><BR>  Uniqueidentifier的值并不像Identit属性那样自动生成。为了给表对象生成一个Uniqueidentifier值,必须指定Newid功能为列的缺省值。<BR><BR>  例如,如果想生成一个表,它列出所有跨国公司辅助部门的最前面的产品的净收入。如果要指定一个GUID数据类型,可以这样表示:<BR><BR>  CREATE 
TABLE NetRevenueTable<BR><BR>   (UniqueColumn Uniqueidentifier DEFAULT 
NEWID(),<BR><BR>  Characters 
VARCHAR(10))<BR><BR>  在数据库工具中,可以在数据库图表或设计一个表时这样做。<BR><BR>  如果用到Uniqueidentifier,请记住下面数据类型的特征:<BR><BR>  ● 
值是长的,模糊的;<BR><BR>  ● 值是随机的,并且下一个模式对用户是没意义的;<BR><BR>  ● 
值在依靠连续增加的申请中是很难利用的;<BR><BR>  ● 
值为16位,因此用这些值来建立的索引会很慢。<BR><BR>  总而言之,使用的数据库工具的新SQL 
Server7.0特性将使企业数据库任务(像跨国公司)更有效、更可行。<BR><BR>  用链接服务器和TOP语句,我们就能够访问外部OLE 
DB数据资源,并且限制实际很长的结果列表,得到想要和能简单使用的结果。另外,如果能正确地在数据库文件上执行文件组和GUID数据类型,操作就能更有效、更容易地完成。 </FONT></P></BODY></HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -