随笔分类 - SQL SERVER类
SQL SERVER 的一些体会
摘要:1 判断数据库是否存在Sql代码 if exists (select * from sys.databases where name = ’数据库名’) drop database [数据库名] if exists (select * from sys.databases where name = ’数据库名’) drop database [数据库名]2 判断表是否存在Sql代码 if exists (select * from sysobjects where id = object_id(N’[表名]’) and OBJECTPROPERTY(id, N’IsUserTable’) =
阅读全文
摘要:转自:http://www.cnblogs.com/kerrycode/archive/2010/08/05/1792671.html动态SQL:code that is executed dynamically。它一般是根据用户输入或外部条件动态组合的SQL语句块。动态SQL能灵活的发挥SQL强大的功能、方便的解决一些其它方法难以解决的问题。相信使用过动态SQL的人都能体会到它带来的便利,然而动态SQL有时候在执行性能(效率)上面不如静态SQL,而且使用不恰当,往往会在安全方面存在隐患(SQL 注入式攻击)。动态SQL可以通过EXECUTE 或SP_EXECUTESQL这两种方式来执行。(来
阅读全文
摘要:转自:http://jankie.blog.51cto.com/6640/1673341.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志: BACKUP LOG 库名 WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 --选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 --选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了 也可
阅读全文
摘要:转自:http://dev.yesky.com/394/2429894.shtmlPIVOT和UNPIVOT关系运算符是SQL Server 2005提供的新增功能,因此,对升级到SQL Server 2005的数据库使用PIVOT和UNPIVOT时,数据库的兼容级别必须设置为90(可以使用sp_dbcmptlevel存储过程设置兼容级别)。 在查询的FROM子句中使用PIVOT和UNPIVOT,可以对一个输入表值表达式执行某种操作,以获得另一种形式的表。PIVOT运算符将输入表的行旋转为列,并能同时对行执行聚合运算。而UNPIVOT运算符则执行与PIVOT运算符相反的操作,它将输入表的列旋
阅读全文
摘要:转自:http://blog.joycode.com/ghj/archive/2008/01/02/113291.aspx不论是 聚集索引,还是非聚集索引,都是用B+树来实现的。我们在了解这两种索引之前,需要先了解B+树。如果你对B树不了解的话,建议参看以下几篇文章:BTree,B-Tree,B+Tree,B*Tree都是什么 http://blog.csdn.net/manesking/arch...
阅读全文
摘要:B树、B-树、B+树、B*树都是什么B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结点关键字小,就进入左儿子;如果比结点关键字大,就进入右儿子;如果左...
阅读全文
摘要:最近在开发项目的过程中遇到这么一个问题,就是在插入一条记录的后立即获取其在数据库中自增的ID,以便处理相关联的数据,怎么做?在sql server 2000中可以这样做,有几种方式。详细请看下面的讲解与对比。一、要获取此ID,最简单的方法就是:(以下举一简单实用的例子)--创建数据库和表create database MyDataBaseuse MyDataBasecreate table myt...
阅读全文
摘要:引言 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 设计范式是不是很难懂呢?非也,大学教材上给我们一堆数学公式我们当然看不懂,也记不住。所以我们很多人就根本不按照范式来...
阅读全文
摘要:数据库设计范式深入浅出 关系数据库设计之时是要遵守一定的规则的。尤其是数据库设计范式现简单介绍1NF(第一范式),2NF(第二范式),3NF(第三范式)和BCNF,另有第四范式和第五范式留到以后再介绍。在你设计数据库之时,若能符合这几个范式,你就是数据库设计的高手。 第一范式(1NF):在关系模式R中的每一个具体关系r中,如果每个属性值都是不可再分的最小数据单位,则称R是第一范式的关系。例:如职工...
阅读全文
摘要:主要说说关于SSRS的安装、部署和配置问题。 SSRS的安装Reporting Services作为SQL Server的一个组件,自然是要伴随SQL Server一起安装了。目前SQL Server 的诸多版本,只有Enterprise和Development版本有着对SSRS的完全支持,Standard版本提供了大部分支持,具有高级功能的Express版只支持一些最基本的功能(不含设计器)。因...
阅读全文
摘要:NVARCHAR 在存储时,无论是全角还是半角,每个字符都占用两个字节。 在定义时,无论全角或是半角,都是定义字符个数而不是字节数。 最多显示4000个字符(无论全角或半角) 是UNICODE标准字符集。 VARCHAR 在存储时每个半角字符占用1个字节,每个全角字符占用两个字节。 在定义时,如果要存储一个汉字,要定义VARCHAR(2)才可以。要存储一个半角英文字母,VARCHAR(1)即可。 ...
阅读全文
摘要:SQLserver中用convert函数转换日期格式2008-01-23 15:47 SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用convert函数转换日期格式 SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12...
阅读全文
摘要:Sql Server中的日期与时间函数 1.当前系统日期、时间 select getdate()2. dateadd在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15')--返回:2004-10-17 00:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。 sel...
阅读全文