随笔分类 -  SQL

摘要:SQL Server 索引结构及其使用(四)作者:freedk一、深入浅出理解索引结构二、改善SQL语句三、实现小数据量和海量数据的通用分页显示存储过程聚集索引的重要性和如何选择聚集索引 在上一节的标题中,笔者写的是:实现小数据量和海量数据的通用分页显示存储过程。这是因为在将本存储过程应用于“办公自动化”系统的实践中时,笔者发现这第三种存储过程在小数据量的情况下,有如下现象:1、分页速度一般维持在1秒和3秒之间。2、在查询最后一页时,速度一般为5秒至8秒,哪怕分页总数只有3页或30万页。 虽然在超大容量情况下,这个分页的实现过程是很快的,但在分前几页时,这个1-3秒的速度比起第一种甚至没有.. 阅读全文
posted @ 2012-06-01 11:00 zhdonghu 阅读(154) 评论(0) 推荐(0)
摘要:SQL Server 索引结构及其使用(三)作者:freedk一、深入浅出理解索引结构二、改善SQL语句实现小数据量和海量数据的通用分页显示存储过程 建立一个 Web 应用,分页浏览功能必不可少。这个问题是数据库处理中十分常见的问题。经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页。但这种分页方法仅适用于较小数据量的情形,因为游标本身有缺点:游标是存放在内存中,很费内存。游标一建立,就将相关的记录锁住,直到取消游标。游标提供了对特定集合中逐行扫描的手段,一般使用游标来逐行遍历数据,根据取出数据条件的不同进行不同的操作。而对于多表和大表中定义的游. 阅读全文
posted @ 2012-06-01 10:56 zhdonghu 阅读(182) 评论(0) 推荐(0)
摘要:SQL Server 索引结构及其使用(二)作者:freedk一、深入浅出理解索引结构改善SQL语句 很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解。比如:select * from table1 where name=''zhangsan'' and tID > 10000和执行:select * from table1 where tID > 10000 and name=''zhangsan'' 一些人不知道以上两条语句的执行效率是否一样,因为 阅读全文
posted @ 2012-06-01 10:26 zhdonghu 阅读(161) 评论(0) 推荐(0)
摘要:作者:freedk一、深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: 其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,就会很自然地翻开字典的前几页,因为“安”的拼音是“an”,而按照拼音排序汉字的字典是以英文字母“a”开头并以“z”结尾的,那么“安”字就自然地排在字典的前部。如果您翻完了所有以“a”开头的部分仍.. 阅读全文
posted @ 2012-06-01 10:25 zhdonghu 阅读(198) 评论(0) 推荐(0)
摘要:一、 简单查询   简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。   例如,下面的语句查询testtable表中姓名为 "张三 "的nickname字段和email字段。   SELECT nickname,email   FROM testtable   WHERE name= '张三 '   (一) 选择列表   选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。   1、选择所有列   例如,下面语句显示test 阅读全文
posted @ 2010-12-20 11:38 zhdonghu 阅读(261) 评论(0) 推荐(0)
摘要:SQL字符串函数大全-数据类型转换函数在一般情况下,SQL Server 会自动完成数据类型的转换,例如,可以直接将字符数据类型或表达式与DATATIME 数据类型或表达式比较当表达式中用了INTEGER、 SMALLINT或TINYINT 时,SQL Server 也可将INTEGER 数据类型或表达式转换为SMALLINT数据类型或表达式,这称为隐式转换。如果不能确定SQL Server 是否能完成隐式转换或者使用了不能隐式转换的其它数据类型,就需要使用数据类型转换函数做显式转换了。此类函数有两个: ・CAST()CAST() 函数语法如下:CAST (expression AS d 阅读全文
posted @ 2010-12-20 11:37 zhdonghu 阅读(528) 评论(0) 推荐(0)
摘要:1--===========字符串使用汇总================23--将字符串中从某个字符开始截取一段字符,然后将另外一个字符串插入此处4selectstuff('hello,world!',4,4,'****')--返回值hel****orld!56--返回从指定位置开始指定长度的字符串7selectsubstring('Hello,World!',2,10)--返回值ello,World89--将字符串中某段字符替换为指定的字符串10selectreplace('hello,world!','ll','aa')--返回值heaao,world!1112--去除字符串中左边的空格 阅读全文
posted @ 2010-12-20 11:36 zhdonghu 阅读(251) 评论(0) 推荐(0)
摘要:1--日期转换参数2selectCONVERT(varchar,getdate(),120)3--2009-03-1515:10:0245selectconvert(char(10),getdate(),1206--2009-03-1578selectreplace(replace(replace(CONVERT(varchar,getdate(),120),'-',''),'',''),':','')9--200903151512011011selectCONVERT(varchar(12),getdate(),111)12--2009/03/151314selectCONVERT(varc 阅读全文
posted @ 2010-12-20 11:36 zhdonghu 阅读(373) 评论(0) 推荐(0)
摘要:该条语句查询返回所有的用户表select * from sysobjects where xtype='u'查询系统所有数据表信息select * from sysobjectssysobjects在数据库内创建的每个对象(约束、默认值、日志、规则、存储过程等)在表中占一行。只有在 tempdb 内,每个临时对象才在该表中占一行。列名数据类型描述namesysname对象名。Idint对象标识号。xtypechar(2)对象类型。可以是下列对象类型中的一种: C = CHECK 约束D = 默认值或 DEFAULT 约束F = FOREIGN KEY 约束L = 日志FN = 标量函数IF = 阅读全文
posted @ 2010-12-20 11:31 zhdonghu 阅读(275) 评论(0) 推荐(0)
摘要:<Language From="SQL" To="C#"> <Type From="bigint" To="long" /> <Type From="binary" To="object" /> <Type From="bit" To="bool" /> <Type From="char" To="string" /> <Type ... 阅读全文
posted @ 2010-11-03 20:30 zhdonghu 阅读(186) 评论(0) 推荐(0)
摘要:方法一:1.如果附加数据库时,没有指定逻辑名,则在SQL2005上显示为“全路径,且为大写”。比如,数据库文件D:MyTest.mdf和D:MyTest.ldf,附加到SQL服务器上时,如果没有指定逻辑名,则在SQL2005上显示为“D:MYTEST.MDF”。此时,C#的连接字符串为“DataSource=dsName;AttatchD... 阅读全文
posted @ 2010-09-07 17:24 zhdonghu 阅读(326) 评论(0) 推荐(0)
摘要:1: DECLARE @Date DATETIME 作者:Sunny Peng出处:http://www.cnblogs.com/psunny本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 阅读全文
posted @ 2010-09-07 16:57 zhdonghu 阅读(219) 评论(0) 推荐(0)
摘要:承接sql大全(一)总纲:13. 工作日处理函数(标准节假日)14. 工作日处理函数(自定义节假日)15. 计算工作时间的函数16. 复杂年月处理17. 交叉表18. 任意两个时间之间的星期几的次数19. 统计--交叉表+日期+优先20. 各种字符串分拆处理函数21. 各种字符串合并处理示例13.工作日处理函数(标准节假日)14.工作日处理函数(自定义节假日)15.计算工作时间的函数16.复杂年月... 阅读全文
posted @ 2010-09-07 16:38 zhdonghu 阅读(502) 评论(0) 推荐(0)
摘要:都是写好的实用sql, 直接拿来使用吧。总纲:1. 设置内存选项2. 实用文件及文件组3. 调整temp数据库的文件属性4. 日期概念理解中的一些测试5. CINVERT在日期转换中的使用示例6. SET DATEFORMAT对日期处理的影响7. SET LANGUAGE对日期处理的影响示例8. 日期格式化处理9. 日期推算处理10. 特殊日期加减函数11.查询指定日期段内过生日的人员12.生成日... 阅读全文
posted @ 2010-09-07 16:36 zhdonghu 阅读(450) 评论(0) 推荐(0)
摘要:/*--实现分页的通用存储过程显示指定表、视图、查询结果的第X页对于表中主键或标识列的情况,直接从原表取数查询,其它情况使用临时表的方法如果视图或查询结果中有主键,不推荐此方法如果使用查询语句,而且查询语句使用了order by,则查询语句必须包含top 语句--邹建2003.09--*//*--调用示例execp_show'地区资料'execp_show'selecttop100percent*... 阅读全文
posted @ 2010-06-20 20:17 zhdonghu 阅读(171) 评论(0) 推荐(0)
摘要:1declare@data_3agonvarchar(50)2declare@cmdvarchar(50)34set@data_3ago='e:\data\'+convert(varchar(10),getdate()-3,112)5set@cmd='del'+@data_3ago6execmaster..xp_cmdshell@cmd7go89declare@datanvarchar(50)10... 阅读全文
posted @ 2010-06-20 20:16 zhdonghu 阅读(193) 评论(0) 推荐(0)
摘要:createprocaaa(@StockNamevarchar(50),@StockCountint,@StockPricemoney)asdeclare@StockIDvarchar(10);declare@numint;select@num=MAX(cast(substring(StockID,4,7)asint))fromstockif@numisnullbeginset@StockID='... 阅读全文
posted @ 2010-06-20 20:15 zhdonghu 阅读(172) 评论(0) 推荐(0)
摘要:一、基础 1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 ... 阅读全文
posted @ 2010-01-20 16:29 zhdonghu 阅读(185) 评论(0) 推荐(0)
摘要:虽然查询速度慢的原因很多,但是如果通过一定的优化,也可以使查询问题得到一定程度的解决。 查询速度慢的原因很多,常见如下几种:ITPUB个人空间d K8p aB"QX,C QW4_[ 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)ITPUB个人空间%w{ g"bNo w%t8g"v 2、I/O吞吐量小,形成了瓶颈效应。"N2IZ$B"j _0 3、没有创建... 阅读全文
posted @ 2010-01-20 16:22 zhdonghu 阅读(181) 评论(0) 推荐(0)
摘要:--利用SQL未公开的存储过程实现分页 if exists (select * from dbo.sysobjectswhere id = object_id(N'[dbo].[p_splitpage]')and OBJECTPROPERTY(id, N'IsProcedure') = 1)drop procedure [dbo].[p_splitpage]GOcreate procedure ... 阅读全文
posted @ 2009-10-15 20:59 zhdonghu 阅读(949) 评论(0) 推荐(2)