出现的问题:
在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) (Microsoft SQL Server,错误: 2)
原因:
MSSQLSERVER(微软数据库服务器)还没打开,所以进入不了,因此出现了未找到或无法访问服务器,解决就是打开微软服务器
解决方案:
开始->程序->Microsoft SQL Server 2008 ->配置工具 ->SQL Server 配置管理器 ,选中SQL Server服务中SQL Server(MSSQLSERVER) ,并双击该行,谈出一窗口,点击“服务”进入,把“启动模式”的手动改为自动(自动就可以每次登陆sql就进入服务状态)
扩展知识,进一入了解sql sever 2008 :
转载自yeewe.com部分文摘:
在现今数据世界里,公司要获得成功和不断发展,他们需要定位主要数据趋势愿景。微软的数据平台愿景将帮助公司满足数据爆炸和下一代数据驱动应用程序的需求。微软将继续投入和发展以下的要害领域来支持他们的数据平台愿景:要害任务企业数据平台、动态开发、关系数据和商业智能。
了解微软数据平台愿景
以及SQLServer2008是如何满足下一代数据驱动应用程序的需求。
Microsoft数据平台愿景
许多因素致使产生信息存储爆炸。有了新的信息类型,例如图片和数字化视频,和从RFID标签获得的传感器信息,公司的数字信息数量在急剧增长。规范化和全球化的发展要求信息存储的安全性和随时可用性。同时,磁盘存储的成本显著地降低了,使得公司投资的每一美元可以存储更多的数据。用户必须快速的在大量的数据中找到相关的信息。此外,他们想在任何设备上使用这个信息,并且计划天天使用,例如MicrosoftOffice系统应用程序。对数据爆炸和用户期望值不断增加的治理为公司制造了许多挑战。
Microsoft%26amp;reg;数据平台愿景提供了一个解决方案来满足这些需求,这个解决方案就是公司可以存储和治理许多数据类型,包括XML、e-mail、时间/日历、文件、文档、地理等等,同时提供一个丰富的服务集合来进行数据交互作用:搜索、查询、数据分析、报表、数据整合,和强大的同步功能。用户可以访问从创建到存档于任何设备的信息,从桌面到移动设备的信息。
SQLServer2008新功能
SQLServer2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最要害任务的应用程序,同时降低了治理数据基础设施成本和发送信息给所有用户的成本。
这个平台有以下特点:
%26middot;可信任的%26mdash;%26mdash;使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最要害任务的应用程序。
%26middot;高效的%26mdash;%26mdash;使得公司可以降低开发和治理他们的数据基础设施的时间和成本。
%26middot;智能的%26mdash;%26mdash;提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。
一、可信任的
在今天数据驱动的世界中,公司需要继续访问他们的数据。SQLServer2008为要害任务应用程序提供了强大的安全特性、可靠性和可扩展性。
(一)保护你的信息
在过去的SQLServer2005基础之上,SQLServer2008做了以下方面的改进来增强和扩展它的安全性:
简单的数据加密
SQLServer2008可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序。进行加密使公司可以满足遵守规范和极其关注数据隐私的要求。简单的数据加密的好处包括使用任何范围或模糊查询搜索加密的数据、加强数据安全性以防止未授权的用户访问、还有数据加密。这些可以在不改变已有的应用程序的情况下进行。
外键治理
SQLServer2008为加密和密钥治理提供了一个全面的解决方案。为不断满足对数据中心信息的更强安全性需求,公司投资给供给商来治理公司内的安全密钥。SQLServer2008通过支持第三方密钥治理和硬件安全模块(HSM)产品为这个需求提供了很好的支持。
增强了审查
使用SQLServer2008可以审查你的数据操作,从而提高了遵从性和安全性。审查不只包括进行数据修改的所有信息,还包括关于什么时候对数据进行读取的信息。SQLServer2008具有像服务器中加强的审查配置和治理这样的功能,这使得公司可以满足各种规范需求。SQLServer2008还可以定义每一个数据库的审查规范,所以审查配置可以为每一个数据库作单独的制定。为指定对象作审查配置使审查的执行性能更好,配置的灵活性也更高。
(二)确保业务可持续性
有了SQLServer2008,微软继续使公司具有提供简化了治理并具高可靠性的应用能力。
改进了数据库镜像
SQLServer2008基于SQLServer2005,提供了更可靠的加强了数据库镜像的平台。新的特性包括:
%26middot;页面自动修复。SQLServer2008通过请求获得一个从镜像合作机器上得到的出错页面的重新拷贝,使主要的和镜像的计算机可以透明的修复数据页面上的823和824错误。
%26middot;提高了性能。SQLServer2008压缩了输出的日志流,以便使数据库镜像所要求的网络带宽达到最小。
%26middot;加强了可支持性
(1)SQLServer2008包括了新增加的执行计数器,它使得可以更细粒度的对数据库治理系统(DatabaseManagementSyste,DBMS)日志记录的不同阶段所耗费的时间进行计时。
(2)SQLServer2008包括动态治理视图(DynamicManagementView)和对现有的视图的扩展,以此来显示镜像会话的更多信息。
热添加CPU
为了在线添加内存资源而扩展SQLServer中的已有的支持,热添加CPU使数据库可以按需扩展。事实上,CPU资源可以添加到SQLServer2008所在的硬件平台上而不需要停止应用程序。
(三)最佳的和可猜测的系统性能
公司面对不断增长的压力,要提供可预计的响应和对随着用户数目增长而不断增长的数据量进行治理。SQLServer2008提供了一个广泛的功能集合,使你数据平台上所有工作负载的执行都是可扩展的和可猜测的。
性能数据的采集
性能调整和排除故障对于治理员来说是耗费时间的工作。为了给治理员提供全面的执行洞察力,SQLServer2008推出了范围更大的数据采集,一个用于存储性能数据的新的集中的数据库,以及新的报表和监控工具。
扩展事件
SQLServer扩展事件是一个用于服务器系统的一般的事件处理系统。扩展事件基础设施是一个轻量级的机制,它支持对服务器运行过程中产生的事件的捕捉、过滤和响应。这个对事件进行响应的能力使用户可以通过增加前后文关联数据,例如TransactSQL对所有事件调用堆栈或查询计划句柄,以此来快速的诊断运行时问题。事件捕捉可以按几种不同的类型输出,包括Windows事件跟踪(EventTracingforWindows,ETW)。当扩展事件输出到ETW时,操作系统和应用程序就可以关联了,这使得可以作更全面的系统跟踪。
备份压缩
保持在线进行基于磁盘备份是很昂贵而且很耗时的。有了SQLServer2008备份压缩,需要的磁盘I/O减少了,在线备份所需要的存储空间也减少了,而且备份的速度明显加快了。
数据压缩
改进的数据压缩使数据可以更有效的存储,并且降低了数据的存储要求。数据压缩还为大型的限制输入/输出的工作负载例如数据仓库提供了显著的性能改进。
资源监控器
SQLServer2008随着资源监控器的推出使公司可以提供持续的和可猜测的响应给终端用户。资源监控器使数据库治理员可以为不同的工作负载定义资源限制和优先权,这使得并发工作负载可以为终端用户提供稳定的性能。
稳定的计划
SQLServer2008通过提供了一个新的制定查询计划的功能,从而提供了更好的查询执行稳定性和可猜测性,使公司可以在硬件服务器更换、服务器升级和产品部署中提供稳定的查询计划。
二、高效的
SQLServer2008降低了治理系统、.NET架构和VisualStudio%26amp;reg;TeamSystem的时间和成本,使得开发人员可以开发强大的下一代数据库应用程序。
(一)基于政策的治理
作为微软正在努力降低公司总成本所作工作的一部分,SQLServer2008推出了陈述式治理架构(DMF),它是一个用于SQLServer数据库引擎的新的基于策略的治理框架。陈述式治理提供了以下优点:
%26middot;遵从系统配置的政策
%26middot;监控和防止通过创建不符合配置的政策来改变系统
%26middot;通过简化治理工作来减少公司的总成本
%26middot;使用SQLServer治理套件查找遵从性问题
DMF是一个基于政策的用于治理一个或多个SQLServer2008实例的系统。要使用DMF,SQLServer政策治理员使用SQLServer治理套件创建政策,这些政策治理服务器上的实体,例如SQLServer的实例、数据库、和其它SQLServer对象。DMF由三个组件组成:政策治理、创建政策的政策治理员,和显式治理。治理员选择一个或多个要治理的对象,并显式检查这些对象是否遵守指定的政策,或显式地使这些对象遵守某个政策。
自动治理
政策治理员使用下面的执行模式之一,使政策自动执行:
%26middot;强制%26mdash;%26mdash;使用DDL触发器阻止违反政策的操作
%26middot;对改动进行检查%26mdash;%26mdash;当一个与某个政策相关的改动发生时,使用事件通知来评估这个政策
%26middot;检查时间表%26mdash;%26mdash;使用一个SQLServerAgent工作定期的评估一个政策
(二)改进了安装
SQLServer2008对SQLServer的服务生命周期提供了显著的改进,它重新设计了安装、建立和配置架构。这些改进将计算机上的各个安装与SQLServer软件的配置分离开来,这使得公司和软件合作伙伴可以提供推荐的安装配置。
(三)加速开发过程
SQLServer提供了集成的开发环境和更高级的数据提取,使开发人员可以创建下一代数据应用程序,同时简化了对数据的访问。
ADO.NET实体框架
在数据库开发人员中的一个趋势是定义高级的业务对象,或实体,然后他们可以将它们匹配到数据库中的表和字段,开发人员使用高级实体例如"客户"或"订单"来显示背后的数据。ADO.NET实体框架使开发人员可以以这样的实体来设计关系数据。在这一提取级别的设计是非常高效的,并使开发人员可以充分利用实体关系建模。
语言级集成查询能力
微软的语言级集成查询能力(LINQ)使开发人员可以通过使用治理程序语言例如C#或VisualBasic.NET,而不是SQL语句来对数据进行查询。LINQ使可以用.NET框架语言编写的无缝和强大的面向集合的查询运行于ADO.NET(LINQ到SQL),ADO.NET数据集(LINQ到数据集),ADO.NET实体框架(LINQ到实体),和到实体数据服务匹配供给商。SQLServer2008提供了一个新的LINQ到SQL供给商,使得开发人员可以直接将LINQ用于SQLServer2008的表和字段。
CLR集成和ADO.NET对象服务
ADO.NET的对象服务层使得可以进行具体化检索、改变跟踪、和实现作为公共语言运行时(CLR)的数据的可持续性。开发人员使用ADO.NET实体框架可以通过使用由ADO.NET治理的CLR对象对数据库进行编程。SQLServer2008提供了提高性能和简化开发过程的更有效的和最佳的支持。
ServiceBroker可扩展性
SQLServer2008继续加强了ServiceBroker的能力。
%26middot;会话优先权%26mdash;%26mdash;使你可以配置优先权,使得最重要的数据会第一个被发送和进行处理。
%26middot;诊断工具%26mdash;%26mdash;诊断工具提高了你开发、配置和治理使用了ServiceBroker的解决方案的能力,例如在应用程序部署之前诊断分支丢失情况或配置不正确的安全问题。
Transact-SQL的改进
SQLServer2008通过几个要害的改进增强了Transact-SQL编程人员的开发体验。
%26middot;TableValueParameters%26ndash;在许多客户的场景中,要传递一个表结构的值(行)的集合到服务器上的一个存储过程或函数中。这些值可能直接用于插入表或更新表,或者是用于更复杂的数据操作。值为表的参数为定义一个表类型和使应用程序创建、赋值和传递表结构的参数到存储过程和函数中提供了更简单的方式。
%26middot;对象相关性%26mdash;%26mdash;对象相关性的改进通过新推出的种类查看和动态治理功能使能够可靠的找出对象间的相关性。相关性信息总是关于绑定架构和未绑定架构的对象的最新的信息。这个相关性会跟踪存储过程、表、视图、函数、触发器、用户定义的类型、XMLschema集合和其他对象。
%26middot;日期/时间数据类型%26mdash;%26mdash;SQLServer2008推出了新的日期和时间数据类型:
(1)DATE%26mdash;%26mdash;一个只包含日期的类型
(2)TIME%26mdash;%26mdash;一个只包含时间的类型
(3)DATETIMEOFFSET%26ndash;一个可辨别时区的日期/时间类型
(4)DATETIME2%26mdash;%26mdash;一个具有比现有的DATETIME类型更精确的秒和年范围的日期/时间类型
新的数据类型使应用程序可以有单独的日期和时间类型,同时为用户定义的时间值的精度提供较大的数据范围。
(四)偶然连接系统
有了移动设备和活动式工作人员,偶然连接成为了一种工作方式。SQLServer2008推出了一个统一的同步平台,使得在应用程序、数据存储和数据类型之间达到一致性同步。在与VisualStudio的合作下,SQLServer2008使得可以通过ADO.NET中提供的新的同步服务和VisualStudio中的脱机设计器快速的创建偶然连接系统。SQLServer2008提供了支持,使得可以改变跟踪和使客户可以以最小的执行消耗进行功能强大的执行,以此来开发基于缓存的、基于同步的和基于通知的应用程序。
(五)不只是关系数据
应用程序正在结合使用越来越多的数据类型,而不仅仅是过去数据库所支持的那些。SQLServer2008基于过去对非关系数据的强大支持,提供了新的数据类型使得开发人员和治理员可以有效的存储和治理非结构化数据,例如文档和图片。还增加了对治理高级地理数据的支持。除了新的数据类型,SQLServer2008还提供了一系列对不同数据类型的服务,同时为数据平台提供了可靠性、安全性和易治理性。这篇白皮书的下一章节将介绍非关系数据存储的一些优点。
HIERARCHYID
SQLServer2008使数据库应用程序以比以前更有效的方式建立树结构。HierarchyId是一个新的系统类型,它可以存储一个层次树中显示的结点值。这个新的类型提供了一个灵活的编程模型。它作为一个CLR用户定义的类型(UDT)来执行,它提供了几种用于创建和操作层次结点的有效及有用的内置方法。
FILESTREAM数据
新的SQLServer2008FILESTREAM数据类型使大型的二进制数据,像文档和图片等可以直接存储到一个NTFS文件系统中;文档和图片仍然是数据库的主要组成部分,并维护事务的一致性。
FILESTREAM使传统的由数据库治理的大型二进制数据可以作为单独的文件存储在数据库之外,它们可以通过使用一个NTFS流API进行访问。使用NTFS流API使普通文件操作可以有效的执行,同时提供所有丰富的数据库服务,包括安全和备份。
集成的全文检索
集成的全文检索使得在全文检索和关系数据之间可以无缝的转换,同时使全文索引可以对大型文本字段进行高速的文本检索。
稀疏列
这个功能使NULL数据不占物理空间,从而提供了一个非常有效的治理数据库中的空数据的方法。例如,稀疏列使得一般包含极多要存储在一个SQLServer2008数据库中的空值的对象模型不会占用很大的空间。稀疏列还答应治理员创建1024列以上的表。
大型的用户定义的类型
SQLServer2008删除了对用户定义的类型的8,000字节的限制,使用户可以显著的扩大他们的UDT的规模。
地理信息
SQLServer2008为在基于空间的应用程序中消耗、扩展和使用位置信息提供了广泛的空间支持。
%26middot;地理数据类型
这个功能使你可以存储符合行业空间标准例如开放地理空间联盟(OpenGeospatialConsortium,OGC)的平面的空间数据。这使得开发人员可以通过存储与设计的平面表面和自然的平面数据例如内部空间等相关联的多边形、点和线来实现"平面地球"解决方案。
%26middot;几何数据类型
这个功能使你可以存储地理空间数据并对其执行操作。使用纬度和经度的组合来定义地球表面的区域,并结合了地理数据和行业标准椭圆体(例如用于全球GPS解决方案的WGS84)。
三、智能的
商业智能(BI)继续作为大多数公司投资的要害领域和对于公司所有层面的用户来说的一个无价的信息源。SQLServer2008提供了一个全面的平台,用于当用户需要时你可以为其提供智能化。
(一)集成任何数据
公司继续投资于商业智能和数据仓库解决方案,以便从他们的数据中获取商业价值。SQLServer2008提供了一个全面的和可扩展的数据仓库平台,它可以用一个单独的分析存储进行强大的分析,以满足成千上万的用户在几兆字节的数据中的需求。下面是SQLServer2008中在数据仓库方面的一些优点。
数据压缩
数据仓库中的数据容量随着操作系统数目的快速增加而在持续增长。内嵌在SQLServer2008中的数据压缩使得公司可以更有效的存储数据,同时还提高了性能,因为降低了I/O要求。
备份压缩
保持一直在线做基于磁盘的备份是花费很昂贵的,并且很耗时。有了SQLServer2008的备份压缩,保持在线备份所需的存储降低了,并且备份速度明显变快了,因为所需要的磁盘I/O减少了。
分区表并行
分割使公司能够更有效的治理大型的、不断增长的数据表,只要简单的将它们分割为易治理的数据块。SQLServer2008是在SQLServer2005中的分割的优势之上建立的,它改进了对大型的分区表的操作性能。
星型联接查询优化器
SQLServer2008为普通的数据仓库场景提供了改进的查询性能。星型联接查询优化器通过辨别数据仓库连接模式降低了查询响应时间。
资源监控器
SQLServer2008随着资源监控器的推出,使公司可以给终端用户提供一致的和可猜测的响应。资源监控器使公司可以为不同的工作负载定义资源限制和优先权,这使得并发工作负载可以提供稳定的性能。
分组设置
分组设置(GROUPINGSETS)是对GROUPBY条件语句的扩展,它使得用户可以在同一个查询中定义多个分组。分组设置生成一个单独的结果集,这个结果集相当于对不同分组的行进行了UNIONALL的操作,这使得聚合查询和报表更加简单和快速。
捕捉变更数据
有了捕捉变更数据,变更会被捕捉并被放在变更表中。它捕捉变更的完整内容,维护交叉表的一致性,甚至是对交叉的schema变更也起作用。这使得公司可以将最新的信息集成到数据仓库中。
MERGESQL语句
有了MERGESQL语句,开发人员可以更有效地处理数据仓库的场景,例如检查一行数据是否存在然后执行插入或更新。
可扩展的集成服务
集成服务的可扩展性方面的两个要害优势是:
%26middot;SQLServer集成服务(SQLServerIntegrationServices,SSIS)管道改进
数据集成包现在可以更有效地扩展、使用有效的资源和治理最大的企业级的工作负载。这个新的设计将运行时间的可扩展性提高到多个处理器中。
%26middot;SSIS持久查找
执行查找是最常见的抽取、转换和加载(ETL)操作。这在数据仓库中尤为普遍,当实际记录必须使用查找来转换业务键到它们相应的替代中去时。SSIS增强了查找的性能以支持大型表。
(二)发送相应的报表
SQLServer2008提供了一个可扩展的商业智能基础设施,使得IT人员可以在整个公司内使用商业智能来治理报表以及任何规模和复杂度的分析。SQLServer2008使公司可以有效的以用户想要的格式和他们的地址发送相应的、个人的报表给成千上万的用户。通过提供了交互发送用户需要的企业报表,获得报表服务的用户数目大大增加了。这使得用户可以获得对他们各自领域的洞察的相关信息的及时访问,使得他们可以作出更好、更快、更符合的决策。SQLServer2008使得所有的用户可以通过下面的报表改进之处来制作、治理和使用报表:
企业报表引擎
有了简化的部署和配置,可以在企业内部更简单的发送报表。这使得用户能够轻松的创建和共享所有规模和复杂度的报表。
新的报表设计器
改进的报表设计器可以创建广泛的报表,使公司可以满足所有的报表需求。独特的显示能力使报表可以被设计为任何结构,同时增强的可视化进一步丰富了用户的体验。
此外,报表服务2008使商业用户可以在一个可以使用MicrosoftOffice的环境中编辑或更新现有的报表,不论这个报表最初是在哪里设计的,从而使公司能够从现有的报表中获得更多的价值。
强大的可视化
SQLServer2008扩展了报表中可用的可视化组件。可视化工具例如地图、量表和图表等使得报表更加友好和易懂。
MicrosoftOffice渲染
SQLServer2008提供了新的MicrosoftOffice渲染,使得用户可以从Word里直接访问报表。此外,现有的Excel%26amp;reg;渲染器被极大的增强了,它被用以支持像嵌套数据区域、子报表和合并单元格等功能。这使得用户可以维护显示保真度和改进MicrosoftOffice应用中所创建的报表的全面可用性。
MicrosoftSharePoint%26amp;reg;集成
SQLServer2008报表服务将MicrosoftOfficeSharePointServer2007和MicrosoftSharePointServices深度集成,提供了企业报表和其它商业洞察的集中发送和治理。这使得用户可以访问包含了与他们直接在商业门户中所做的决策相关的结构化和非结构化信息的报表。
(三)使用户获得全面的洞察力
及时访问准确信息,使用户快速对问题、甚至是非常复杂的问题作出反应,这是在线分析处理的前提(OnlineAnalyticalProcessing,OLAP)。SQLServer2008基于SQLServer2005强大的OLAP能力,为所有用户提供了更快的查询速度。这个性能的提升使得公司可以执行具有许多维度和聚合的非常复杂的分析。这个执行速度与MicrosoftOffice的深度集成相结合,使SQLServer2008可以让所有用户获得全面的洞察力。SQLServer分析服务具有下面的分析优势:
设计为可扩展的
SQLServer2008加强了分析能力和提供了更复杂的计算和聚合,使得能进行的分析更宽广。新的立方体设计工具帮助用户将分析基础设施的开发工作流线化,使他们可以为优化性能建立解决方案。这个设计里内嵌了BestPracticeDesignAlerts,使得开发人员可以在设计时集成实时警告,这优化了设计。DimensionDesigner使得可以简单的查看和编辑属性关系,还可以提供多个内置的对理想尺度设计的支持的验证,而在数据挖掘结构中增强的灵活性使得可以创建多个不同的模型,而不仅仅是过滤数据。
块计算
块计算提供了一个在处理性能方面的显著提高,使得用户可以增加他们的层级深度和计算的复杂度。
回写到MOLAP
SQLServer2008分析服务中的新的基于MOLAP的回写功能使得不再需要查询ROLAP分区。这给用户提供了更强的用于分析应用程序中的回写设定,而不需要以OLAP性能为代价。
资源监控器
在SQLServer2008中一个新的资源监控器提供了对资源利用情况的具体观察。有了这个资源监控器,数据库治理员可以快速并轻松的监控和控制分析工作负载,包括识别哪个用户在运行什么查询和他们会运行多久,这使得治理员可以更好的优化服务器的使用。
猜测分析
一个改进的时间序列算法扩大了猜测能力。这个查询数据挖掘结构的能力使得报表可以很轻易的包含从挖掘模型的外部得来的属性。新的交叉验证特性对数据进行多处对比,发送给你可靠的结果。这些数据挖掘的改进之处一起为更好的洞察和更丰富的信息提供了机会。
总结
SQLServer2008提供了公司可依靠的技术和能力来接受不断发展的对于治理数据和给用户发送全面的洞察的挑战。具有在要害领域方面的显著的优势,SQLServer2008是一个可信任的、高效的、智能的数据平台。SQLServer2008是微软数据平台愿景中的一个主要部分,旨在满足目前和将来治理和使用数据的需求。
SQLServer2008是一个重大的产品版本,它推出了许多新的特性和要害的改进,使得它成为至今为止的最强大和最全面的SQLServer版本。
本文章帮你充分熟悉SQLPLUS命令。
remark:告诉SQLPLUS接下来的文字是注释,不是命令。
sethaedsep:标题分隔符标识一个告诉SQLPLUS
将一个标题分为两行或更多行的字符。
ttitle:设置报表每一页的头标题。
btitle:设置报表每一页的尾标题。
column:给SQLPLUS各种关于列的标题、格式和处理的指令。
breakon:告诉SQLPLUS在报表的各部分间插入空格,或者将小计和总计断开。
computesum:令SQLPLUS计算小计。
setlinesize:为报表的行设置最大字符数。
setpagesize:为页设置最大行数。
setnewpage:设置页与页之间的空行数。
spool:将通常在屏幕上显示的报表移入一个文件,以便打印。
/**/在SQL项内标记一个注释的开头和结尾。类似于remark。
--在SQL项内标记联机注释所的开始。将该标记开始到本行末尾的一切内容都视为注释。类似于remark。
setpause:使屏幕显示在页与页之间停顿。
save:把正在建立的SQL查询保存到一个选中的文件中。
host:向主操作系统发送命令。
start或@:告诉SQLPLUS执行已经存储到文件中的指令。
edit:使你迅速离开SQLPLUS并进入所选择的编辑器。
define_editor:告诉SQLPLUS你所选择的编辑器的名字。
exit或quit:终止SQLPLUS。
MicrosoftSQLServer之数据库存档
本文将为大家讲述如何注释自己的SQLServer,这些原理适用于所有的SQLServer版本,虽然SQLServer2005及更高的版本包含了一些增强数据存档功能的巧妙设置。本文大部分涉及的原理也同样适用于其他的关系数据库,如Oracle、MySQL、MicrosoftAccess和PostgreSQL等。
数据库命名规范
假如你是从头开始设计一个数据库,那遵循逻辑数据实体命名规范将是明智之举。下面为您提供在新数据库中给对象命名时会用到的一些建议。
一般命名规范
假如可以,数据库名称应当只使用文字和数据这两种字符。避免使用连字号,因为之后会给编写某些T-SQL查询命令造成困难。
假如可能,尽量避免在数据库实例中使用空格符,非凡是为表和列命名时。虽然假如用方括号括起来的话,T-SQL还是可以辨认这些实体,不过在某些情况下也有可能导致混淆和代码错误。此外,还要尽量避免在表名和列名中使用T-SQL的保留词,例如month、year和user等。
表命名规范
当我们为表命名时,应当使用与该表存储的数据相关的名称。例如,存储企业员工数据的表可以命名为employees,注重这里使用的是名词的复数形式,因为一个表里很可能存储一个以上员工信息。
有一些程序开发人员会为表名附上像t_这样的前缀。假如这些表是引用了应用程序的源代码而来,那么这些前缀就非常有用,这样能够使软件开发团队一眼就看出来这是一个表,而不是一个视图或其他被引用的实体。
给表名附上与其功能相关的前缀(如StudentID_)可以帮助我们把表分门别类。SQLServer2005引入了模式的概念,可以为表分类。例如StudentsEnrollments数据库中包含了StudentResources模式,而相关的表(StudentID、StudentAddress、StudentCredits等)就会在SQLServer治理工作室表列中的这个模式下全部列出。
外键命名规范
假如能在一个数据表中识别出哪些是外键(foreignkeys)会非常有用,所以在为外键命名的时候,可以添加一些类似于fk_的前缀,这样可以更直接的从表的字段中看出表的关系。
存储过程命名规范
根据用途来为存储过程命名是很有意义的。例如,GetUserID、InsertDateOfBirth、UpdateEnrollInfo等等,这样对于存储过程的用途就一目了然了。
有时候,可以适当添加后缀来表示存储过程的输入参数。例如GetUserIDByUserNameAndPassword这名称表示该存储过程会通过一个用户名和密码作为输入参数返回用户ID。这可以用来区分功能相似但参数设置不同的存储过程,还可以添加其他相关的存储过程,例如GetUserIDByGUID和GetUserIDByApplicantID。这种命名规范的缺陷就是存储过程的名字会变得很长。
一些开发人员会用特定的标签来为所有的存储程序添加前缀。其中很流行的做法是为存储程序名添加sp_前缀。不过,这里并不推荐这种做法,原因有二。首先,这对数据库性能有稍微的影响,因为SQLServer会先在主数据库中查找所有带有这个前缀的存储过程,虽然这会性能的影响很小,不过在高级和企业系统中,影响可能会放大。其次,由于微软在设计的时候也为系统的存储过程使用了这个前缀,所以始终存在着这种可能,那就是你为自己的存储过程起的名字和某个系统存储过程的名字相同。而且,SQLServer未来发布的版本中可能会引入一个新的系统存储过程,而这个过程与你现有的用户存储过程的名字相同。
假如你实在想要为自己的存储过程添加前缀,那么建议你使用usp_或sproc_这样的前缀。同样的,你可以为某个函数名加上func_这样的前缀,非凡是在从应用程序源代码调用存储程序的时候非常有用,因为这让软件开发团队清楚的了解到这是在调用一个存储过程。
SQL存储过程的存档
千万不要忘记把存储过程和函数的T-SQL代码存档。由于简单的查询代码应该是自注释的,而存档将对大型的查询代码非常有用。而存储过程的标准化标头也非常有用,至少能够说明该存储过程的功能。假如手头上没有任何源控制系统,在标头中包括日志变化的内容还能够帮助我们追踪变化的发生。
数据库对象描述
能够对数据库对象进行描述在某种程度上意味着能够创建自我存档的数据库。
微软早在SQLServer7.0就引入了一个有用的功能,就是通过表设计窗口为某个表添加描述(Description)。SQLServer2000通过引入扩展属性(extendedproperties)加强了这一功能。然而,SQLServer2000的企业治理器限制了答应属性编辑的功能。不过在SQLServer2005中的SQLServer治理工作室GUI答应对扩展属性进行编辑。数据库中的大部分对象(如表、列、视图、函数、存储过程和数据库本身)都具有可编辑的扩展属性。默认状态下,只有单一的扩展属性MS_Description。而且,虽然你可以利用MS_Description扩展属性来为对象添加描述,但假如没有第三方加载工具,就算添加了,用处也并不大。
原文地址 http://www.yeewe.com/w/mssqlserver(感谢该地址作者的普及) |