
SQL Server学习笔记[推荐]
文章平均质量分 80
feixianxxx
如果你只是等待,发生的事情只会是你变老了.
展开
-
【个人学习1之-DATETIME数据类型】
1.关于字符型和DATETIME类型的转化 由于时间类型的优先级高于字符型,所以当比较一个DATETIME类型的数据和一个字符串的时候,字符串首先会转化成DATETIME类型。A 20060102 090807 20090203 12:11:11.111转化成时间类型的时候 B 2009-02-03 12:11:11.111转化成时间类型的时候原创 2009-10-15 20:25:00 · 4407 阅读 · 3 评论 -
【个人学习笔记15之--浅谈视图】
视图 概念: 一个没有索引的视图其实只是一个虚拟表,没有任何物理的数据,它就是一段代码组成的东西,包含了描述它的元数据,如结构,依赖性等.1.它可以对基础数据做些聚合之类的操作后提供使用.2.它可以筛选数据,让客户只能访问视图以达到保护原表的目的.3.同样,视图不能包含单独的ORDER BY .因为它被认为是一个表,表是逻辑实体,本身里面的数据时随便放的,并米有刻意按照某个顺序存储原创 2009-11-11 14:39:00 · 4959 阅读 · 6 评论 -
【个人学习笔记16之--浅谈UDF(用户自定义函数)】
好久不写了,今天来说说UDF(用户自定义函数)UDF分为标量UDF和表值UDF。ps:每种都有CLR UDF的在05里面 本人不熟悉 所以只写T-SQL的 使用场合——在 Transact-SQL 语句(如 SELECT)中——在调用该函数的应用程序中——在另一个用户定义函数的定义中——用于参数化视图或改进索引视图的功能——用于在表中定义列——用于为列定义 CHECK 约束——用于替换原创 2009-11-25 15:43:00 · 5056 阅读 · 2 评论 -
【个人学习笔记17之--存储过程浅谈】
这次讲得是 存储过程(proc) 存储过程分类:1.用户自定义存储过程: 分成 TRANSACT-SQL存储过程和CLR存储过程2.拓展存储过程(后续版本将删除这个,所以避免使用它了,用clr替代)3.系统存储过程物理意义上讲,系统存储过程存储在源数据库中,并且带有 sp_ 前缀。从逻辑意义上讲,系统存储过程出现在每个系统定义数据库和用户定义数据库的 sys 构架中。 存储过程的优原创 2009-11-27 21:14:00 · 4391 阅读 · 5 评论 -
【个人学习笔记18之--浅谈触发器】
这次谈的是触发器Microsoft SQL Server 提供两种主要机制来强制使用业务规则和数据完整性:约束和触发器。关于触发器和约束用谁比较好,这主要看业务的逻辑复杂程度.如果你的处理逻辑比较简单,并且可以用一些简单的约束来处理,则应该尽量使用PRIMARY KEY ,UNIQUE CHECK这些约束.当约束支持的功能无法满足应用程序的功能要求时,DML 触发器非常有用 例如:1.除非原创 2009-12-03 20:11:00 · 7265 阅读 · 3 评论 -
【 SQL SERVER 2005页面存储之--表的数据行在页中的存储 】
SQL SERVER 2005页面存储之--表的数据行在页中的存储 第一篇来说说我们的表的数据行在页中的存储详解,也为接下来几篇关于特殊数据类型存储和索引的存储这篇讲得是没有聚集索引,没有非聚集索引,含有定长列和变长列的堆 /*------------------------------------------------原创 2010-03-17 19:03:00 · 4834 阅读 · 27 评论 -
【SQL SERVER2005页面存储3之--聚集索引的存储】
聚集索引的存储 一:聚集索引的叶级别存储聚集索引在叶级别的存储其实就是以数据页的形式存储的,之前几篇关于堆数据行的存储已经都详细说过了,但是这里因为有了聚集索引,所以还是有个特殊的地方需要注意的--带有唯一标识符的聚集索引行.我们如果在建表并为其建立聚集索引原创 2010-04-14 20:46:00 · 2009 阅读 · 1 评论 -
【SQL SERVER 2005页面存储2之--特殊数据类型在页面中的存储】
上一篇讲了SQL SERVER 2005页面存储中的一般页面存储和读取方法http://blog.youkuaiyun.com/feixianxxx/archive/2010/03/17/5390317.aspx这一篇来讲讲特殊的数据类型在页面中的存储,这里分析2个特殊数据类型:LOB类型和SQL_VARIANT类型 参考文献--技术内幕系列+MSDN原创 2010-04-05 21:32:00 · 2415 阅读 · 9 评论 -
【常见的SQL Server连接失败错误以及解决方法】
常见的SQL Server连接失败错误以及解决方法 A--SQL Server 不存在或访问拒绝错误有以下可能:a.SQL Server名称或者IP地址拼写有误b.服务器端网络配置错误c.客户端网络配置错误 解决步骤:1.检查网络物理连接ping 服务器名称 或者 ping 服务器ip地址===》原创 2010-04-24 13:07:00 · 55438 阅读 · 2 评论 -
【SQL Server 优化性能的几个方面】
SQL Server 优化性能的几个方面 (一).数据库的设计 可以参看最近论坛上出现一个精华帖http://topic.youkuaiyun.com/u/20100415/10/a377d835-acbd-4815-8bcb-b367f88ac8b5.html?92227 数据库设计包含物理设计和逻辑设计: 物理设计上可以通过使用RAID硬件架构。 简原创 2010-04-24 18:25:00 · 9073 阅读 · 4 评论 -
【SQL Server2005页面存储4之--非聚集索引行在叶级别存储】
非聚集索引行在叶级别存储的时候也分在堆上、在聚集索引的表上. 一:堆上的非聚集索引在叶级别的存储 /*----------------------------------------------------------------------*auther:Poofly*date:2010.3.14*VERSION:Microsoft SQL Server原创 2010-05-08 15:53:00 · 2112 阅读 · 1 评论 -
【SQL Server2008新增功能小结】
/*------------------------------------------------------------------ Author :feixianxxx(poofly)-- Date :2010-05-12 19:43:03-- Version:-- Microsoft SQL Server 2008 (SP1) - 10.0.2531.0原创 2010-05-12 20:52:00 · 4375 阅读 · 3 评论 -
【个人学习笔记14之--浅谈动态SQL】
动态SQL 动态的SQL和游标一样也是一个很有争议的东西,不过我觉得貌似大家对他的排斥不是很高. 不好的地方:1.动态SQL是非常危险的,因为动态SQL一般是根据用户的输入来构造你的整个SQL语句,也就是我们平时看到一些参数参与了SQL语句,一般的黑客也会 利用这个空洞进行注入,这是我对注入最简单理解,利用手写进去的一些代码,改变本来的SQL语句结构.2.动态语句原创 2009-11-09 21:20:00 · 3289 阅读 · 2 评论 -
【个人学习笔记12之--临时表和表变量】
今天来说说 临时表和表变量当我们需要把数据临时具体化的时候,你会想到临时表,表变量或者表表达式处理成这样的好处有几个:1.处理临时出来的表 比基本数据肯定要简洁。特别是你多次利用它的时候,你可以想象经常从一张大表里找东西有多浩大的工程.2.处理成临时数据集 可以让你的代码,思路清晰无比. 有些代码比较长,如果你分模块逐个处理会很清楚.这里临时数据集起到很重要的作用. A.临时表1. 你原创 2009-11-02 20:14:00 · 3190 阅读 · 5 评论 -
【个人学习2之-与字符相关的问题】
学习参考 t-sql programming 得: 1.模式匹配SQL server 提供的模式匹配是有限的,它利用LIKE 和PATINDEX 函数实现匹配,并不支持正则表达式。通过收集字符列的子字符串统计信息,SQL2005加强了LIke的优化。即当字符串以通配符开始的时候,它将比SQL2000更加精确的决定是否使用索引(意思就是以通配符开始的LIKE查询也是可以用索引的)原创 2009-10-16 19:59:00 · 1412 阅读 · 2 评论 -
【个人学习之3-关于LOB和数据的隐式转化】
1.关于LOB(Large Object)2005后SQL 引进了新的MAX说明符来支持LOB。虽然这个版本的TEXT,NTEXT,IMAGE继续被支持着,因为前者的出现而不再推荐使用。它还引入了XML数据类型,允许你存储和处理XML数据。还允许使用BULK引擎高效地将文件数据加载为行集。MAX:通过MAX说明符,存储的值可以高达2GB 这是目前为止最大量的数据类型。2005中原创 2009-10-17 18:30:00 · 1649 阅读 · 0 评论 -
【个人学习4之--SQL中逻辑查询处理的各个阶段】
ps:首先郁闷下 :前面在优快云博客上直接写,写了一个多小时,按了个另存为草稿,结果什么都没了。。郁闷 这次在WORD上写。今天我来谈下有关SQL中逻辑查询处理的各个阶段(自己搞的例子,不对的欢迎指正哦)SQL不同于其他的编程语言的最大最大特征有3个吧,一个是它是面向集合的编程思想,第二个是三值逻辑(这个后面会说到),还有一个就是今天主要要说的查询元素的逻辑处理次序。请看一个基本查询的逻原创 2009-10-18 17:54:00 · 3536 阅读 · 15 评论 -
【个人学习笔记5之--子查询与表表达式】
前天讲了SQL逻辑查询处理,本来今天应该说说物理查询处理的,介于这章的东西有点难度,自己看书都一懂半懂,所以就等下次看完再说。至于查询优化,说实在的,看天书一样的过去了,看来需要反复看了。下面我介绍下子查询。表表达式。排名函数。 1.子查询这里不知道写什么重点,我觉得子查询分2种吧。一种是独立的子查询,和外部查询无关,它只为外部查询执行一次足矣.还有一种是相关的子查询,它是外部查询没执行一原创 2009-10-20 18:07:00 · 3246 阅读 · 1 评论 -
【个人学习笔记6之--排名函数和缺失 已有范围】
今天写的是排名函数,缺失范围(书中自有黄金屋~)1.排名函数:SQL2005引进了4个新的排序函数,分别是 row_number rank dense_rank ntile .我不知道怎么排版写,就散乱地写点吧。a.row_number :row_number()不仅在排名上有作用,而且在许多实际问题上都有不错的应用,效率也非常不错.排名函数 就是用来为记录添上编号--行号。这里说个分区排名原创 2009-10-23 19:56:00 · 2248 阅读 · 0 评论 -
【个人学习笔记7之--联接与集合操作】
说到联接与集合操作,其实它们就是对表的2种形式的操作。前者是表之间的水平操作,后者是表之间的垂直操作。 1.联接联接分为2个时期.旧语法中,FROM子句后面表之间用逗号分开,没有JOIN ON 关键字.新语法才加入了JOIN关键字和ON子句.还引入了外部联接.旧的语法也是支持外部联接的,不过形式有所不同。以前关于外部联接的语法是 *=和=*(左右联接),不推荐.关于这方面的知识,可以参考J原创 2009-10-27 16:55:00 · 2186 阅读 · 1 评论 -
【个人学习笔记8之--关于OVER子句 多属性的比较 PIVOT 聚合问题】
这篇讲些聚合的手段 1.OVER子句我们所了解的OVER字句不仅仅是用于排序上,其实它还可以用于标量的聚合函数--为每一行计算聚合,不需要你去分组.(分组这个点我觉得很舒服)我在上个笔记中其实已经用到了这个用法 我再换个例子说说:create table #(id int, a int)insert # select1,2 union all select 1,3 union all se原创 2009-10-27 20:51:00 · 1936 阅读 · 1 评论 -
【个人学习笔记9之--TOP 和APPLY 】
这篇来说说TOP 和APPLY 1.TOP一般来说 我们的TOP 和 ORDER BY 是一起连用的 这样可以返回确定的行 你可以看做是一个筛选器,可以再表表达式中使用。SQL 2005 TOP 后面支持连接 变量 算术表达式 子查询结果. 在2000里 只支持后面具体数字 如果想在2000中使用类似TOP (@n)的功能 参考http://blog.youkuaiyun.com/feixianxxx/原创 2009-10-29 19:06:00 · 2624 阅读 · 1 评论 -
【个人学习笔记10之--数据修改之插入数据,更新数据,删除数据.】
这篇说的是数据修改,这里无非是三种DML操作:插入数据,更新数据,删除数据. 1.插入数据:a.select into --》select * into newtable from oldtable 它的作用是从一个表oldtable 选取数据插入到一个新表newtable,但是没有返回值,只是建了个有数据的新表.新表有原来表oldtable 的选出来的结果集的列属性,包括IDEN原创 2009-10-31 15:37:00 · 5358 阅读 · 0 评论 -
【个人学习笔记11之--SQL 中的 图 树 层次结构】
在RDBMS中操作 图 树 层次结构 等特殊的数据结构时,我们通常采用2个主要方法:1.基于迭代/递归 2.具体化描述数据结构的附加信息。一般模型有:员工组织图(树,层次结构);料表--BOM(有向图);道路系统(无向循环图)1.迭代/递归迭代可以迭代图的一个节点,也可以迭代一个层次.后者比前者要快很多.实现方法:SQL2000通过UDF(用户自定义函数),SQL2005使用CTE。原创 2009-11-01 11:44:00 · 5902 阅读 · 2 评论 -
【个人学习笔记13之--游标薄见】
浅谈 游标.这个东西很难说,存在必有其存在的道理.不能一棍子说它怎么不好,效率多差,它还是有适合用的地方,不然微软也不会把它做出来让大家用.这本身就说明他是个不可舍去的东西..根据书上,我说说游标的使用 1.游标为什么这么受弃用 a.游标和关系模式的主要前提是冲突的。关系模式是一个集合的逻辑,它注重的你在执行代码后获取什么’。 但是游标是一种过程的逻辑,它注重的是如何处理数原创 2009-11-07 15:43:00 · 2468 阅读 · 2 评论 -
【SQL Server2005页面存储5之--非聚集索引行在非叶级别存储】
SQL Server2005页面存储5之--非聚集索引行在非叶级别存储原创 2010-07-17 10:17:00 · 3107 阅读 · 4 评论