随笔分类 - MS SQL Server
MS SQL Server
摘要:order by 的数值型灵活使用 代码: select * from table_a where id=p_id order by decode(函数,'asc',1,'desc',-1)*jsny; 控制试图的访问时间: 6. 代码: create view ... as select ... from where exists(select x from dual wher...
阅读全文
摘要:一、字符转换函数 1、ASCII() 返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。 2、CHAR() 将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。 3、LOWER()和UPPER() LOWER()将字符串全部转为小写;UP...
阅读全文
摘要:1. 增加Richer Data Type,例如varchar(max)、nvarchar(max)和varbinary(max)等資料類型,使用max指定最大2GB的儲存空間,可用於改進(取代)過去text, ntext和image無法跨頁儲存(8KB)的限制。另一個值得一提的是XML資料類型,用於儲存XML字串片段和XML檔案內容。 2. 支援try/catch error handling...
阅读全文
摘要:在现实生活中,树型数据屡见不鲜:组织机构,产品结构,人事关系等等......记得在以往的一个项目中,涉及到机构,人员,在对其进行处理,特别是进行统计,聚集操作的时候,我一直没找到一个好的方法.临时表,视图,程序控制...能用的办法都用上了,但在处理效率上一直不尽如人意.归根结底,我的感觉就是在数据库中,对数据的操作方式(不管是SQL语言,SP,VIEW...)不象程序语言那样灵活,高效率. ...
阅读全文
摘要:数据库设计说明书 来源: 国家计算机标准和文件模板 1 引言 1.1编写目的 说明编写这份数据库设计说明书的目的,指出预期的读者。 1.2背景 说明: a.说明待开发的数据库的名称和使用此数据库的软件系统的名称; b.列出该软件系统开发项目的任务提出者、用户以及将安装该软件和这个数据库的计算站(中心)。 1.3定义 列出本文件中用到的专门术语的...
阅读全文
摘要:SQL SERVER的数据类型 数据类弄是数据的一种属性,表示数据所表示信息的类型。任何一种计算机语言都定义了自己的数据类型。当然,不同的程序语言都具有不同的特点,所定义的数据类型的各类和名称都或多或少有些不同。SQLServer 提供了 25 种数据类型: ·Binary [(n)] ·Varbinary [(n)] ·Char [(n)] ·Varchar[(n)] ...
阅读全文
摘要:如题,试举一例,数据库为possn_data.mdf、possn_log.ldf --------------------------------------------------------------- 1: 用写字板新建一文本文件 EXEC sp_attach_db @dbname = N''possn'', @filename1 = N'...
阅读全文
摘要:系统设计的好坏在根本上决定了软件系统的优劣。可以说“差的系统设计必定产生差的软件系统”,但是不能保证“好的系统设计必定产生好的软件系统”。因为在设计之前有需求开发工作,在设计之后还有编码,测试和维护工作,无论哪个环节出了差错,都会把好事搞砸了。 据说上帝把所有的女士都设计成天使,可是天使们在下凡的时候,有些人双脚先着地,有些人脸先着地。上帝的这一疏忽让很多女士伤透了心。所以我们在开发软件的时候,一...
阅读全文
摘要:-- -- --整理了几个常用的数据库维护的脚本,和大家分享,希望能够对大家有所帮助,尤其是 --初学者。这些脚本只针对Sql Server 2000,在Sql Server 2005下没有进行测试,有些 --可能不适用。如果有错误,请联系我 -- -- /**//******************************************************************...
阅读全文
摘要:PDF版浏览: http://www.cnblogs.com/Files/JimmyZhang/DataBase-Object-Naming-Guidelines.pdf 本文是一个参考,不是一个规范,更不是一个标准。它仅代表了我个人的观点和建议,并只考虑了通常条件下的规则,你可以根据实际情况随意修改它。 引言 编码规范是一个优秀程序员的必备素质,然而,有很多人非常注重程序中变量、方法、...
阅读全文
摘要:轉自:http://www.netfocus.cn/peoplearticle993.html 我们先看NestedLoop和MergeJoin的算法(以下为引用,见RicCC的《通往性能优化的天堂-地狱 JOIN方法说明》): ================================== NestedLoop: foreach rowA in tableA where tabl...
阅读全文
摘要:轉自:http://www.netfocus.cn/peoplearticle994.html 先站在应用程序的角度说说它们的不同。 1、 直接拼SQL 就像大家了解的那样,直接拼SQL带来了SQL注入攻击,带来了拼时些许的性能损失,但是拼不用添加SqlParameter,会少写很多代码——很多人喜欢直接拼,也许就因为这点。这种做法会把你拼好的SQL原样直接发送到DB服务器去执行。(注意类似”...
阅读全文
摘要:轉自:http://www.netfocus.cn/peoplearticle995.html 本文主要介绍写SQL的另外两个误区: 1、 存储过程中使用局部变量而不使用参数变量(就是存储过程输入参数)做where条件 2、 查询条件中类型不匹配 这两种错误都是非常非常容易犯且非常发指的错误,特别是2,太多次见过了。 一、关于存储过程使用局部变量,我们举例说明。 有这么一张表 存储过程...
阅读全文
摘要:先说说这些误区。所谓“误区”,有一些是新手很容易犯的错误或者很容易忽略的问题,另外一些,则是像“耗子吃了盐会变成蝙蝠”一样,让我们从小就认为是正确的事情。如下: 1、 表上不管用得着用不着,都加个聚集索引。 我们知道,表以两种方式组织物理存储:有聚集索引的“聚集表”;没有聚集索引的“堆”。在聚集表中,数据行按照聚集索引的顺序存储(这也是为啥一张表最多只能有一个聚集索引的原因);堆中,数据行的存储可...
阅读全文
摘要:上回我们说到评估一条语句执行效率主要看逻辑IO(啥是逻辑IO,啥是物理IO见联机文档),这次我们继续。 我们先说说,返回多行结果时,为什么SQLServer有时会选择index seek,有时会选择index scan。 以nonclustered index为例说明。 像所有的索引B树一样,非聚集索引树也包括完全由索引数据组成的根节点和中间级节点;但是和聚集索引树不同的是,聚集索引树叶节点包含的...
阅读全文
摘要:轉自:http://www.netfocus.cn/peoplearticle998.html 大型系统的生产环境,一般情况下,我们评价一条查询是否有效率,更多的是关注逻辑IO(至于为什么,回头补一篇)。我们常说,“要建彪悍的索引”、“要写高效的SQL”,其实最终目的就是在相同结果集情况下,尽可能减少逻辑IO。 1.1 where条件的列上都得有统计信息。 没统计信息SQLSe...
阅读全文
摘要:SQL Server 2005相对于SQL Server 2000改进很大,有些还是非常实用的。举几个例子来简单说明 这些例子我引用了Northwind库。 1. TOP 表达式 SQL Server 2000的TOP是个固定值,是不是觉得不爽,现在改进了。 --前n名的订单 declare @n int ...
阅读全文
摘要:/*--比较两个数据库的表结构差异 --邹建 2003.9--*/ /*--调用示例 exec p_comparestructure 'xzkh_model','xzkh_new' --*/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_comparestructure]') and OB...
阅读全文
摘要:利用T-SQL语句,实现数据库的备份与还原的功能体现了SQL Server中的四个知识点: 1. 获取SQL Server服务器上的默认目录 2. 备份SQL语句的使用 3. 恢复SQL语句的使用,同时考虑了强制恢复时关闭其他用户进程的处理 4. 作业创建SQL语句的使用/*1.--得到数据库的文件目录@dbname指定要取得目录的数据库名如果指定的数据不存在,返回安装SQL时设置的默认数据目录如果指定NULL,则返回默认的SQL备份目录名--邹建2003.10(引用请保留此信息)--*//*--调用示例select数据库文件目录=dbo.f_getdbpath('tempdb'
阅读全文
摘要:轉自:http://www.netfocus.cn/peoplearticle1125.html /*--压缩数据库的通用存储过程 压缩日志及数据库文件大小 因为要对数据库进行分离处理 所以存储过程不能创建在被压缩的数据库中 --邹建 2004.03--*/ /*--调用示例 exec p_compdb 'test' --*/ use master --注意,此存储过程要建...
阅读全文
浙公网安备 33010602011771号