08 2017 档案

摘要:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.or 阅读全文
posted @ 2017-08-24 18:58 有梦就能实现 阅读(366) 评论(0) 推荐(0) 编辑
摘要:核心代码:$('html,body').animate({scrollTop: $('.'+cl+'_content').offset().top}, 1500); 让滚动条在指定时间内,滚动到指定元素的位置。 scrollTop 相对滚动条顶部的偏移 offset获取元素偏移量.top表示获取元素 阅读全文
posted @ 2017-08-24 18:52 有梦就能实现 阅读(2787) 评论(0) 推荐(0) 编辑
摘要:js平滑滚动到顶部、底部、指定地方 产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍产品介绍 返回顶部 产品介绍 滑到底部 阅读全文
posted @ 2017-08-24 18:25 有梦就能实现 阅读(2597) 评论(0) 推荐(0) 编辑
摘要:CSS属性值是逐渐改变的,这样就可以创建动画效果。 只有数字值可创建动画(比如 "margin:30px")。 字符串值无法创建动画(比如 "background-color:red")。 复制代码 代码如下: $('#shang').click(function(){$('html,body'). 阅读全文
posted @ 2017-08-24 17:02 有梦就能实现 阅读(3110) 评论(0) 推荐(0) 编辑
摘要:Java代码 输出结果: Java代码 tree :{0=a, 3=c, 4=s, e=b} link :{0=a, e=b, 4=s, 3=c} hash :{3=c, 0=a, 4=s, e=b} Java代码 Java代码 由此可见: HashMap是按照HashCode 排序,莫名其妙的顺序 阅读全文
posted @ 2017-08-24 14:59 有梦就能实现 阅读(1298) 评论(0) 推荐(0) 编辑
摘要:EL 全名为Expression Language。 ${EL标识符} 作用: 获取数据: •EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象、获取数据。(某个web域 中的对象,访问javabean的属性、访问list集合、访问map集合、访问数组) 执行 阅读全文
posted @ 2017-08-21 12:45 有梦就能实现 阅读(1521) 评论(0) 推荐(1) 编辑
摘要:方法与页面对应关系,可存入数据库or配置文件中 方法返回pageId 找到具体页面,设置include 变量/top menu id, left menu id 统一返回到index.jsp 中,这样所有页面都复用了html/CSS 导航应支持可配置,导航数据都保存在数据库 阅读全文
posted @ 2017-08-21 12:38 有梦就能实现 阅读(472) 评论(0) 推荐(0) 编辑
摘要:"> " > 阅读全文
posted @ 2017-08-21 12:28 有梦就能实现 阅读(215) 评论(0) 推荐(0) 编辑
摘要:(1)Master数据库是SQL Server系统最重要的数据库,它记录了SQL Server系统的所有系统信息。这些系统信息包括所有的登录信息、系统设置信息、SQL Server的初始化信息和其他系统数据库及用户数据库的相关信息。因此,如果 master 数据库不可用,则 SQL Server 无 阅读全文
posted @ 2017-08-21 10:25 有梦就能实现 阅读(667) 评论(0) 推荐(0) 编辑
摘要:最近一个项目,客户端使用用jQuery编写ajax请求,服务端采用struts2框架。js发送请求和action处理请求过程中,遇到一个问题。刚开始觉得问题很诡异,仔细定位很久之后才发现问题,虽然问题解决了, 但更深层次的原因还不清楚,欢迎大牛们指导。 1.问题现象 客户端问题 客户端问题 通过IE 阅读全文
posted @ 2017-08-21 10:24 有梦就能实现 阅读(4163) 评论(0) 推荐(0) 编辑
摘要:service是业务层 action层即作为控制器 DAO (Data Access Object) 数据访问 service是业务层 action层即作为控制器 DAO (Data Access Object) 数据访问 service是业务层 action层即作为控制器 DAO (Data Ac 阅读全文
posted @ 2017-08-20 10:43 有梦就能实现 阅读(1690) 评论(0) 推荐(0) 编辑
摘要:HTTP只负责把数据传送过去,不会管这个数据是XML、HTML、图片、文本文件或者别的什么。而SOAP协议则定义了怎么把一个对象变成XML文本,在远程如何调用等,怎么能够混为一谈。 这样说两种协议: HTTP就是邮局的协议,他们规定了你的信封要怎么写,要贴多少邮票等。。。。 SOAP就是你们之间交流 阅读全文
posted @ 2017-08-17 16:09 有梦就能实现 阅读(397) 评论(0) 推荐(0) 编辑
摘要:public class FileUploadManager { /** 允许上传的扩展名*/ public static String [] extensionPermit = {"txt", "xls", "zip"}; public FileUploadManager(User user, HttpServletRequest request) throws... 阅读全文
posted @ 2017-08-16 22:22 有梦就能实现 阅读(2183) 评论(0) 推荐(0) 编辑
摘要:这个漏洞是2014年2月4日被发现的, 因为该组件试用范围非常广, 所以该漏洞的影响也非常巨大。通过特制的包含畸形header的http请求,可以导致使用该组件的应用程序进入无限循环从而耗尽CPU等资源并最终崩溃。 最近因为在修补struts1的可操纵classLoader的漏洞(struts2也有 阅读全文
posted @ 2017-08-16 21:09 有梦就能实现 阅读(1045) 评论(0) 推荐(0) 编辑
摘要:文件上传一个经常用到的功能,它有许多中实现的方案。 页面表单 + RFC1897规范 + http协议上传 页面控件(flash/html5/activeX/applet) + RFC1897规范 + http协议上传 页面控件(flash/html5/activeX/applet) + 自定义数据 阅读全文
posted @ 2017-08-16 20:58 有梦就能实现 阅读(2250) 评论(0) 推荐(0) 编辑
摘要:Java 修改文件权限这个应该是老生常谈的功能,但是最近发现以前写的代码有一点点安全隐患,所以把代码改成NIO的方式,下面会介绍2种修改文件,文件夹权限的方法。 使用File类 这个方式是以前最常见的方式,但是这个方式有点缺点在Linux或者UNIX系统下,需要显示的指定权限为440,770等就显得 阅读全文
posted @ 2017-08-16 15:53 有梦就能实现 阅读(26063) 评论(0) 推荐(0) 编辑
摘要:咋一看,太熟悉了,就去eclipse\links 目录下,发现指定的MyEclipse的路径不对。 突然想起来了,MyEclipse是换地了。 MyEclipse里面内置的eclipse找不到MyEclipse路径了,确保MyEclipse根目录在一个英文的文件夹下面,具体修改地址: D:\安装承载 阅读全文
posted @ 2017-08-16 14:44 有梦就能实现 阅读(3481) 评论(0) 推荐(0) 编辑
摘要:现有一文件,其扩展名未知或标记错误。假设它是一个正常的、非空的文件,且将扩展名更正后可以正常使用,那么,如何判断它是哪种类型的文件? 在后缀未知,或者后缀被修改的文件,依然通过文件头来判断该文件究竟是什么文件类型。我们可以使用一个文本编辑工具如UltraEdit打开文件(16进制模式下),然后看文件 阅读全文
posted @ 2017-08-16 14:24 有梦就能实现 阅读(743) 评论(0) 推荐(0) 编辑
摘要:一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分。 特别对于U 阅读全文
posted @ 2017-08-14 10:36 有梦就能实现 阅读(6562) 评论(1) 推荐(0) 编辑
摘要:select * from table where title like '%'?'%'; 采用? 传参会报错:sql server like 在将值转换成数据类型int失败 select * from table where title like '%str%'; 采用字符串拼接就OK,way? 阅读全文
posted @ 2017-08-11 14:42 有梦就能实现 阅读(457) 评论(0) 推荐(0) 编辑
摘要:对普通开发人员来说经常能接触到上千万条数据优化的机会也不是很多,这里还是要感谢公司提供了这样的一个环境,而且公司让我来做优化工作。当数据库中的记录不超过10万条时,很难分辨出开发人员的水平有多高,当数据库中的记录条数超过1000万条后,还是蛮能考验开发人员的综合技术能力。 当然不是每个公司都能请得起 阅读全文
posted @ 2017-08-10 19:13 有梦就能实现 阅读(521) 评论(0) 推荐(0) 编辑
摘要://首先检查程序有没有限入死循环 这个问题主要还是由这个问题 java.lang.OutOfMemoryError: Java heap space 引起的。第一次出现这样的的问题以后,引发了其他的问题。在网上一查可能是JAVA的堆栈设置太小的原因。 跟据网上的答案大致有这两种解决方法: 1、设置环 阅读全文
posted @ 2017-08-10 09:35 有梦就能实现 阅读(11861) 评论(0) 推荐(0) 编辑
摘要:1、内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接。 内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行。例如,检索 students和courses表中学生标识号相同的所有行。 2、外联接。外联接可以是左向外联接、右向外联接或完整外部联接。 在 F 阅读全文
posted @ 2017-08-10 08:33 有梦就能实现 阅读(4453) 评论(0) 推荐(0) 编辑
摘要:select top 10 id,name,displayName from PM_User where name like '%yang%' order by id with tempPagination as(select ROW_NUMBER() OVER(ORDER BY id) as RowNumber, id,name,displayName from PM_User wher... 阅读全文
posted @ 2017-08-09 20:41 有梦就能实现 阅读(191) 评论(0) 推荐(0) 编辑
摘要:一、hibernate分页 hibernate对MsSql的伪分页 分页是web项目中比不可少的一个功能,数据量大的时候不能全部展示必然要用到分页技术。相信大家对hibernate中的分页都不陌生: Java代码 public Query setMaxResults(int maxResults); 阅读全文
posted @ 2017-08-09 19:50 有梦就能实现 阅读(830) 评论(0) 推荐(0) 编辑
摘要:如果保证子查询没有重复 ,IN、EXISTS的相关子查询可以用INNER JOIN 代替。比如: IN、EXISTS的相关子查询用INNER JOIN 代替--sql2000性能优化 阅读全文
posted @ 2017-08-09 18:41 有梦就能实现 阅读(350) 评论(0) 推荐(0) 编辑
摘要:在使用Exists时,如果能正确使用,有时会提高查询速度: 1,使用Exists代替inner join 2,使用Exists代替 in 1,使用Exists代替inner join例子: 在一般写sql语句时通常会遇到如下语句: 两个表连接时,取一个表的数据,一般的写法通过关联查询(inner j 阅读全文
posted @ 2017-08-09 18:40 有梦就能实现 阅读(1498) 评论(0) 推荐(0) 编辑
摘要:在实际开发中,我们往往需要比较两个或多个表数据的差别,比较那些数据相同那些数据不相同,这时我们有一下三种方法可以使用:1. IN或NOT IN,2. EXIST或NOTEXIST,3.使用连接查询(inner join,left join 或者 right join)。 看下面的数据,我们准备选择出 阅读全文
posted @ 2017-08-09 18:31 有梦就能实现 阅读(1351) 评论(0) 推荐(0) 编辑
摘要:sql语句优化 性能不理想的系统中除了一部分是因为应用程序的负载确实超过了服务器的实际处理能力外,更多的是因为系统存在大量的SQL语句需要优化。 为了获得稳定的执行性能,SQL语句越简单越好。对复杂的SQL语句,要设法对之进行简化。 常见的简化规则如下: 1)不要有超过5个以上的表连接(JOIN) 阅读全文
posted @ 2017-08-09 08:57 有梦就能实现 阅读(221) 评论(0) 推荐(0) 编辑
摘要:处理百万级以上的数据提高查询速度的方法: 1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。 2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 3.应尽量避免在 where 子句中对字段进行 n 阅读全文
posted @ 2017-08-09 08:52 有梦就能实现 阅读(367) 评论(0) 推荐(0) 编辑
摘要:index seek和index scan 提高sql 效率解释解释index seek和index scan:索引是一颗B树,index seek是查找从B树的根节点开始,一级一级找到目标行。index scan则是从左到右,把整个B树遍历一遍。假设唯一的目标行位于索引树最右的叶节点上(假设是非聚 阅读全文
posted @ 2017-08-09 08:40 有梦就能实现 阅读(483) 评论(0) 推荐(0) 编辑
摘要:Clustered Index Scan 与 Clustered Index Seek 在利用 SQL Server 查询分析器的执行计划中,会有许多扫描方式,其中就有 Clustered Index Scan 与 Clustered Index Seek,这二者有什么区别呢? Clustered 阅读全文
posted @ 2017-08-09 08:35 有梦就能实现 阅读(3967) 评论(0) 推荐(0) 编辑
摘要:Select语句完整的执行顺序: SQL Select语句完整的执行顺序: 1、 from子句组装来自不同数据源的数据; 2、where子句基于指定的条件对记录行进行筛选; 3、group by子句将数据划分为多个分组; 4、使用聚集函数进行计算; 5、使用having子句筛选分组; 6、计算所有的 阅读全文
posted @ 2017-08-09 08:29 有梦就能实现 阅读(400) 评论(0) 推荐(0) 编辑
摘要:一、准备工作 缓存对于某个查询的性能影响十分之大,所以优化之前要清空缓存。 清除Buffer Pool时面的所有缓存 DBCC DROPCLEANBUFFERS清除Buffer Pool里的所有缓存的执行计划,已经预编译的内容,在此处将被清空 DBCC FREEPROCCACHE 二、SET STA 阅读全文
posted @ 2017-08-08 16:59 有梦就能实现 阅读(208) 评论(0) 推荐(0) 编辑
摘要:set statistics profile on实例 1、SQL语句实例 SQL 代码 复制 <!-- --> SET STATISTICS PROFILE ON GO SELECT COUNT(b.[SalesOrderID]) FROM [dbo].[SalesOrderHeader_test 阅读全文
posted @ 2017-08-08 16:08 有梦就能实现 阅读(485) 评论(0) 推荐(0) 编辑
摘要:进行set statistics profile on 设置后 将会返回执行计划表,通过该表,可以理解语句执行的过程,了解SQL Server是否选择了正确的执行计划,进而确定调优方向! 1、返回表字段描述: Rows:执行计划每一步返回的实际行数 Executes:执行计划每一步执行的次数 Stm 阅读全文
posted @ 2017-08-08 16:03 有梦就能实现 阅读(591) 评论(0) 推荐(0) 编辑
摘要:SQLServer文件收缩-图形化+命令 汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 收缩前 图形化演示: 不仅仅可以收缩日记文件,数据库文件也是可以收缩的,只不过日记收缩比较明显点(为什么这么大?这么浪费? 》你还记得你建库时候的 阅读全文
posted @ 2017-08-07 15:08 有梦就能实现 阅读(368) 评论(0) 推荐(0) 编辑
摘要:最常的做法: --1.清空日志 DUMP TRANSACTION tempdb WITH NO_LOG --2.截断事务日志: BACKUP LOG tempdb WITH NO_LOG --3.收缩数据库文件 DBCC SHRINKDATABASE(tempdb) 比较保险的做法: 1. 将tem 阅读全文
posted @ 2017-08-07 15:01 有梦就能实现 阅读(5007) 评论(0) 推荐(0) 编辑
摘要:汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 异常处理汇总-数据库系列 http://www.cnblogs.com/dunitian/p/4522990.html 我这种情况应该算是情况之一吧 先贴图: 看看磁盘:。。。 把事务模式 阅读全文
posted @ 2017-08-04 17:09 有梦就能实现 阅读(956) 评论(0) 推荐(0) 编辑
摘要:1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www. 阅读全文
posted @ 2017-08-04 15:50 有梦就能实现 阅读(751) 评论(0) 推荐(0) 编辑
摘要:最近需要将一个Sql Server 2005数据库中的数据导出,为了方便,就希望能导出成Sql文件,里面包含的数据是由Insert 语句组成的。 在Sql Server Management Studio 2005 中(包括之前Sql Server2000 的企业管理器),只能把表结构导出到Sql脚 阅读全文
posted @ 2017-08-04 15:22 有梦就能实现 阅读(7086) 评论(0) 推荐(0) 编辑
摘要:版权声明:本文为博主原创文章,未经博主允许不得转载。 阅读全文
posted @ 2017-08-04 14:56 有梦就能实现 阅读(1471) 评论(1) 推荐(0) 编辑
摘要:方法一: USE [master] GO ALTER DATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE DNName SET RECOVERY SIMPLE --简单模式 GO USE DNName GO DBCC  阅读全文
posted @ 2017-08-03 17:08 有梦就能实现 阅读(488) 评论(0) 推荐(0) 编辑
摘要:一、出错情况 有些时候当你重启了数据库服务,会发现有些数据库变成了正在恢复、置疑、可疑等情况,这个时候DBA就会很紧张了,下面是一些在实践中得到证明的方法。 在一次重启数据库服务后,数据库显示正在恢复,过了很久还是这个状态,离线时间不能太长,所以就想起了一个方法,就是把数据库服务停止了,把数据文件m 阅读全文
posted @ 2017-08-03 14:33 有梦就能实现 阅读(882) 评论(0) 推荐(0) 编辑
摘要:还原数据库时,提示还原成功,可是数据库列表中该数据库显示正在还原中: 执行此命令即可: RESTORE DATABASE EnterPriseBuilding WITH RECOVERY 了解SQLServer脚本之数据库误删数据找回:http://www.cnblogs.com/Leo_wl/p/ 阅读全文
posted @ 2017-08-03 14:12 有梦就能实现 阅读(7147) 评论(0) 推荐(0) 编辑
摘要:SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0)。在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\sgdtcc.MDF' 阅读全文
posted @ 2017-08-03 14:03 有梦就能实现 阅读(4451) 评论(1) 推荐(0) 编辑
摘要:logical operation:基于微软查询处理概念模型的逻辑操作。例如,联接运算符的physical operation属性表示联接算法(nested loops,merge ,hash)物理运算符 logical operation属性表示逻辑联接类型(Inner join,outer jo 阅读全文
posted @ 2017-08-02 16:00 有梦就能实现 阅读(427) 评论(0) 推荐(0) 编辑
摘要:在园子看到一篇SQLServer关于查询计划的好文,激动啊,特转载。原文出自:http://www.cnblogs.com/fish-li/archive/2011/06/06/2073626.html 看懂SqlServer查询计划 对于SqlServer的优化来说,可能优化查询是很常见的事情。关 阅读全文
posted @ 2017-08-02 15:37 有梦就能实现 阅读(3091) 评论(0) 推荐(0) 编辑
摘要:我们知道sql在底层的执行给我们上层人员开了一个窗口,那就是执行计划,有了执行计划之后,我们就清楚了那些烂sql是怎么执行的,这样 就可以方便的找到sql的缺陷和优化点。 一:执行计划生成过程 说到执行计划,首先要知道的是执行计划大概生成的过程,这样就可以做到就心中有数了,下面我画下简图: 1. 分 阅读全文
posted @ 2017-08-02 15:33 有梦就能实现 阅读(313) 评论(0) 推荐(0) 编辑
摘要:刚开始用SQL Server的时候,我没有用显示执行计划来对查询进行分析。我曾经一直认为我递交的SQL查询都是最优的,而忽略了查询性能究竟如何,从而对“执行计划”重视不够。在我职业初期,我只要能获取数据就很开心,而不去考虑数据是如何返回的,“执行计划”对我的查询作了什么工作。我以为SQL Serve 阅读全文
posted @ 2017-08-02 15:32 有梦就能实现 阅读(411) 评论(0) 推荐(1) 编辑
摘要:以前有 DBA 在身边的时候,从来不曾考虑过数据库性能的问题,但是,当一个应用程序从头到脚都由自己完成,而且数据库面对的是接近百万的数据,看着一个页面加载速度像乌龟一样,自己心里真是有种挫败感。代码的优化问题,这是属于程序员的职责范围之内,对于我来说,这一方面比较好探查些,因为都是自己熟悉的,用 E 阅读全文
posted @ 2017-08-02 15:26 有梦就能实现 阅读(249) 评论(0) 推荐(0) 编辑
摘要:写在前面:这是第一篇T-SQL查询高级系列文章.但是T-SQL查询进阶系列还远远没有写完。这个主题放到高级我想是因为这个主题需要一些进阶的知识作为基础..如果文章中有错误的地方请不吝指正.本篇文章的内容需要索引的知识作为基础。 简介 在SQL SERVER中,非聚集索引其实可以看作是一个含有聚集索引 阅读全文
posted @ 2017-08-02 15:22 有梦就能实现 阅读(266) 评论(0) 推荐(0) 编辑
摘要:在查看执行计划或调优过程中,执行计划里面有些现象总会让人有些疑惑不解: 1:为什么同一条SQL语句有时候会走索引查找,有时候SQL脚本又不走索引查找,反而走全表扫描? 2:同一条SQL语句,查询条件的取值不同,它的执行计划会一致吗? 3: 同一条SQL语句,其执行计划会变化,为什么 4: 在查询条件 阅读全文
posted @ 2017-08-02 15:18 有梦就能实现 阅读(324) 评论(0) 推荐(0) 编辑
摘要:当SQL Server的性能变差时,最可能发生的是以下两件事: 首先,某些查询产生了系统资源上很大的压力。这些查询影响整个系统的性能,因为服务器无法足够快速地服务其他SQL查询。 另外,开销较大的查询阻塞了其他请求相同数据库资源的查询,进一步降低了这些查询的性能。优化开销较大的查询不仅改进它们本身的 阅读全文
posted @ 2017-08-02 15:09 有梦就能实现 阅读(314) 评论(0) 推荐(0) 编辑
摘要:一、分析查询执行计划 执行计划的阅读顺序为,从右到左,从上到下。 由执行计划表示的查询执行的一些特征如下: 如果查询由多个查询的批组成,每个查询的执行计划按照执行的顺序显示。批中的每个执行计划将有一个相对的估算开销,整个批的总开销为100%。 执行计划中的每个图标代表一个操作符。它们每个都有一个相对 阅读全文
posted @ 2017-08-02 15:07 有梦就能实现 阅读(944) 评论(0) 推荐(0) 编辑
摘要:要理解执行计划,怎么也得先理解,那各种各样的名词吧。鉴于自己还不是很了解。本文打算作为只写懂的,不懂的懂了才写。 在开头要先说明,第一次看执行计划要注意,SQL Server的执行计划是从右向左看的。 名词解析: 扫描:逐行遍历数据。 先建立一张表,并给大家看看大概是什么样子的。 CREATE TA 阅读全文
posted @ 2017-08-02 15:06 有梦就能实现 阅读(271) 评论(0) 推荐(0) 编辑
摘要:推荐SQL Server精准时间查询方式 USE Test /*插入或修改3条时间为以下极端情况的记录 UPDATE dbo.UserInfo SET AddTime = '2016-8-1 00:00:00' WHERE id=2 UPDATE dbo.UserInfo SET AddTime = 阅读全文
posted @ 2017-08-02 15:01 有梦就能实现 阅读(1096) 评论(0) 推荐(0) 编辑
摘要:三、连接查询部分 嵌套循环 /* UserInfo表数据少、Coupon表数据多 嵌套循环可以理解为就是两层For循环,外层For会循环其中的每一项,内层For进行匹配, 相应的外层For对应外部输入表,执行计划的图示排在上面,内层For对应内部出入表,执行计划的图示排在下面, 外部表每一行都要使用 阅读全文
posted @ 2017-08-02 14:59 有梦就能实现 阅读(248) 评论(0) 推荐(0) 编辑
摘要:一、基本概念 1.数据的读取 页(page)是SQL SERVER可以读写的最小I/O单位。即使只需访问一行,也要把整个页加载到缓存之中,再从缓存中读取数据。物理读取是从磁盘上读取,逻辑读取是从缓存中读取。物理读取一页的开销要比逻辑读取一页的要大得多。 SET STATISTICS IO ON -- 阅读全文
posted @ 2017-08-02 14:58 有梦就能实现 阅读(451) 评论(0) 推荐(0) 编辑
摘要:Sql语句varchar或nvarchar字段条件前加N的话是对这个字段进行Unicode编码, 这样做的目的是避免在这种字段中存入俄文、韩文、日文的情况下有可能会出现乱码。 但这样做也会有性能问题,举例如下: SELECT * FROM UserInfo WHERE Name = N'taiyon 阅读全文
posted @ 2017-08-02 14:56 有梦就能实现 阅读(627) 评论(0) 推荐(0) 编辑
摘要:一、数据查询部分 1、 看到执行计划有两种方式,对sql语句按Ctrl+L,或按Ctrl+M打开显示执行计划窗口每次执行sql都会显示出相应的执行计划 2、 执行计划的图表是从右向左看的 3、 SQL Server有几种方式查找数据记录 [Table Scan] 表扫描(最慢),对表记录逐行进行检查 阅读全文
posted @ 2017-08-02 14:54 有梦就能实现 阅读(677) 评论(1) 推荐(0) 编辑
摘要:http://www.studyofnet.com/news/list-8883.2-1-4.html 一、SQL Server 2008将数据导出到SQL脚本文件 1、打开SQL Server2008数据库的 Management Studio管理工具 2、进入数据库后,选择我们需要进行操作的数据 阅读全文
posted @ 2017-08-02 14:44 有梦就能实现 阅读(18017) 评论(0) 推荐(0) 编辑
摘要:一个SQL SERVER数据库会处于很多种状态,例如 ONLINE 、RESTORING 、RECOVERING 、RECOVERY_PENDING 、SUSPECT、EMERGENCY 、OFFLINE等等。 一、下图主要反映了数据库的主要状态之间的切换 二、各种状态的简单介绍 1、ONLINE 阅读全文
posted @ 2017-08-02 14:40 有梦就能实现 阅读(2621) 评论(0) 推荐(0) 编辑
摘要:1、定期进行数据备份(完备或差异备份)和日志备份。 2、使用压缩备份来减少磁盘空间占用和提高备份效率。 3、定期检查磁盘剩余空间和备份文件增长情况,以确保有足够空间进行下一次备份。 4、使用校验和(CHECKSUM)来检查数据完整性。 5、使用RESTORE VERIFYONLY来验证备份可用性。 阅读全文
posted @ 2017-08-02 14:39 有梦就能实现 阅读(516) 评论(0) 推荐(0) 编辑
摘要:一、使用组合索引需要注意的地方 1、索引应该建在选择性高的字段上(键值唯一的记录数/总记录条数),选择性越高索引的效果越好、价值越大,唯一索引的选择性最高; 2、组合索引中字段的顺序,选择性越高的字段排在最前面;如果把低选择性的列放在最左端,可能会造成无法使用该索引的情况。 3、where条件中包含 阅读全文
posted @ 2017-08-02 14:30 有梦就能实现 阅读(1180) 评论(0) 推荐(0) 编辑
摘要:复合索引最令人困惑的当属索引列的顺序,不仅依赖于使用该索引的查询,更需考虑排序和分组。 前段时候我发了个帖子:where条件顺序和复合索引字段顺序。感兴趣的朋友不妨参与讨论。 今天我提个自己的观点。 在应用开发阶段,【选择性】是我们首要考虑因素,请看简图: 当出现sql性能问题时,你可能需要注意以下 阅读全文
posted @ 2017-08-02 14:22 有梦就能实现 阅读(682) 评论(0) 推荐(0) 编辑
摘要:曾经在网络上看到过一种说法,SqlServer的存储过程中使用临时表,会导致重编译,以至于执行计划无法重用, 运行时候会导致重编译的这么一个说法,自己私底下去做测试的时候,根据profile的跟踪结果, 存储过程中使用临时表,如果不是统计信息变更导致导致的重编译,并不会导致重编译, 但是现实情况下, 阅读全文
posted @ 2017-08-02 14:13 有梦就能实现 阅读(360) 评论(0) 推荐(0) 编辑
摘要:这种传递参数的方式,再传递到IN里面去实际上SQL是把整个参数当成一个string类型来处理的,所以不管你怎么写都相当于 IN ('ssssssssss.....'),不管里面什么格式。这种情况想达到效果,要不然拼接SQL执行,要不然用charindex 1 select * from show20 阅读全文
posted @ 2017-08-02 13:54 有梦就能实现 阅读(549) 评论(0) 推荐(0) 编辑
摘要:我们知道,SqlServer执行sql语句的时候,有一步是对sql进行编译以生成执行计划, 在生成执行计划之前会去缓存中查找执行计划 如果执行计划缓存中有对应的执行计划缓存,那么SqlServer就会重用这个执行计划缓存,避免编译,从而提高效率, 对于开发者来说,为了达到能够重用执行计划的目的,使用 阅读全文
posted @ 2017-08-02 13:48 有梦就能实现 阅读(492) 评论(0) 推荐(1) 编辑
摘要:结论先行的话就是: 对于相对来说简单的SQL,Inner join的方式过滤和放在Where条件中过滤性能上来说是一样的, 但是对于复杂的SQL,有可能出现Inner join过滤出现性能问题的情况,此时可以尝试将条件放在where中做尝试,这个问题没有什么定论 前段时间遇到一个存储过程,参数之一是 阅读全文
posted @ 2017-08-02 13:46 有梦就能实现 阅读(9008) 评论(0) 推荐(0) 编辑
摘要:本质原因在于:SQL Server 统计信息只包含复合索引的第一个列的信息,而不包含复合索引数据组合的信息 来源于工作中的一个实际问题, 这里是组合列数据不均匀导致查询无法预估数据行数,从而导致无法选择合理的执行计划导致性能低下的情况 我这里把问题简单化,主要是为了说明问题 如下一张业务表,主要看两 阅读全文
posted @ 2017-08-02 11:56 有梦就能实现 阅读(216) 评论(0) 推荐(0) 编辑
摘要:为什么我也要说SQL Server的并行: 这几天园子里写关于SQL Server并行的文章很多,不管怎么样,都让人对并行操作有了更深刻的认识。 我想说的是:尽管并行操作可能(并不是一定)存在这样或者那样的问题,但是我们不能否认并行,仍然要利用好并行。 但是,实际开发中,某些SQL语句的写法会导致用 阅读全文
posted @ 2017-08-02 11:54 有梦就能实现 阅读(610) 评论(0) 推荐(0) 编辑
摘要:本文出处:http://www.cnblogs.com/wy123/p/6008477.html 关于统计信息对数据行数做预估,之前写过对非相关列(单独或者单独的索引列)进行预估时候的算法,参考这里。 今天来写一下统计信息对于复合索引在预估时候的计算方法和潜在问题。 本文原形来自于是个实际业务问题, 阅读全文
posted @ 2017-08-02 11:51 有梦就能实现 阅读(235) 评论(0) 推荐(0) 编辑
摘要:经常听Oracle的同学说起来物化视图,物化视图的作用之一就是可以实现查询重写,听起来有一种高大上的感觉, SQL Server也有类似于Oracle物化视图的功能,只不过叫做索引视图。 说实话,还是物化视图听起来比较合适,与普通视图比,物化视图就是直接将数据存储起来了 SQL Server中的索引 阅读全文
posted @ 2017-08-02 11:49 有梦就能实现 阅读(422) 评论(0) 推荐(0) 编辑
摘要:现实中遇到过到这么一种情况: 在某些特殊场景下:进行查询的时候,加了TOP 1比不加TOP 1要慢(而且是慢很多)的情况, 也就是说对于符合条件的某种的数据,查询1条(符合该条件)数据比查询所有(符合该条件)数据慢的情况, 这种情况往往只有在某些特殊条件下会出现,那么,就有两个问题:为什么加了TOP 阅读全文
posted @ 2017-08-02 11:25 有梦就能实现 阅读(2372) 评论(0) 推荐(0) 编辑
摘要:阻塞原因之一是不同的Session在访问同一张表的时候因为不兼容锁的原因造成的, 当前执行的SQL语句是否被阻塞(或者死锁),不仅跟当前表上的已有的锁有关,也会跟当前执行的SQL语句的执行方式有关 简单来说,对于表的访问方式,SQL语句的执行无非是表扫描,索引扫描,(聚集索引或者非聚集索引)索引查找 阅读全文
posted @ 2017-08-02 11:19 有梦就能实现 阅读(393) 评论(0) 推荐(0) 编辑
摘要:本文出处:http://www.cnblogs.com/wy123/p/6677073.html 在做数据统计类数据库设计的时候,在考虑数据存储的时候,经常会遇到逻辑上同一个BusinessID对应多个数据点的情况, 比如工资表中的员工ID以及各项工资信息,财务表中的各个报表Id和多个数据点之间的信 阅读全文
posted @ 2017-08-02 11:16 有梦就能实现 阅读(739) 评论(0) 推荐(0) 编辑
摘要:本文出处:http://www.cnblogs.com/wy123/p/6694933.html 第一次通过索引视图优化SQL语句,以及遇到的一些问题,记录一下。 语句分析 最近开发递交过来一个查询统计的SQL,说是性能有问题,原本执行需要4-5秒钟,这个业务本身对性能要求又比较critical,期 阅读全文
posted @ 2017-08-02 11:06 有梦就能实现 阅读(2406) 评论(0) 推荐(1) 编辑
摘要:本文出处:http://www.cnblogs.com/wy123/p/7106861.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错误进行修正或补充,无他) 最近在SQL Server中多次遇到开发人员提交过来的有性能问题的SQL, 阅读全文
posted @ 2017-08-02 10:55 有梦就能实现 阅读(459) 评论(0) 推荐(0) 编辑
摘要:复杂SQL拆分优化 拆分SQL是性能优化一种非常有效的方法之一, 具体就是将复杂的SQL按照一定的逻辑逐步分解成简单的SQL,借助临时表,最后执行一个等价的逻辑,已达到高效执行的目的 一直想写一遍通过拆分SQL来优化的博文,最近刚好遇到一个实际案例,比较有代表性,现分享出来, 我们来通过一个案例来分 阅读全文
posted @ 2017-08-02 10:47 有梦就能实现 阅读(2397) 评论(0) 推荐(0) 编辑
摘要:说说复合索引 写索引的博客太多了,一直不想动手写,有一下两个原因: 一是觉得有炒剩饭的嫌疑,有兄弟曾说:索引吗,只要在查询条件上建索引就行了,真的可以这么暴力吗? 二来觉得,索引是个非常大的话题,很难概括出所有的情况,你不整出点新意来,倒是有抄袭照搬的嫌疑 既然写了,就写一点稍微不一样的东西出来, 阅读全文
posted @ 2017-08-02 10:37 有梦就能实现 阅读(444) 评论(0) 推荐(0) 编辑
摘要:SELECT 索引名称=a.name ,表名=c.name ,索引字段名=d.name ,索引字段位置=d.colid ? 1 2 3 4 5 6 7 8 FROM sysindexes a JOIN sysindexkeys b ON a.id=b.id AND a.indid=b.indid J 阅读全文
posted @ 2017-08-02 10:35 有梦就能实现 阅读(3408) 评论(0) 推荐(0) 编辑
摘要:前言 终于进入死锁系列,前面也提到过我一直对隔离级别和死锁以及如何避免死锁等问题模棱两可,所以才鼓起了重新学习SQL Server系列的勇气,本节我们来讲讲SQL Server中的死锁,看到许多文章都只简述不能这样做,这样做会导致死锁,但是未理解其基本原理,下次遇到类似情况依然会犯错,所以基于了解死 阅读全文
posted @ 2017-08-02 10:33 有梦就能实现 阅读(613) 评论(0) 推荐(0) 编辑
摘要:前言 上一节我们简单讲述了表表达式的4种类型,这一系列我们来讲讲使用视图的限制,简短的内容,深入的理解,Always to review the basics。 避免在视图中使用ORDER BY 上一节我们也讲述了使用表表达式必须满足的3个要求,其中就有一个无法保证顺序,也就是说的ORDER BY的 阅读全文
posted @ 2017-08-02 10:24 有梦就能实现 阅读(329) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们来看看有关查询中UNION和UNION ALL的问题,简短的内容,深入的理解,Always to review the basics。 初探UNION和UNION ALL 首先我们过一遍二者的基本概念和使用方法,UNION和UNION ALL是将两个表或者多个表进行JOIN,当然表的数 阅读全文
posted @ 2017-08-02 10:15 有梦就能实现 阅读(230) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们开始讲讲这一系列性能比较的终极篇IN VS EXISTS VS JOIN的性能分析,前面系列有人一直在说场景不够,这里我们结合查询索引列、非索引列、查询小表、查询大表来综合分析,简短的内容,深入的理解,Always to review the basics。 IN VS EXISTS 阅读全文
posted @ 2017-08-02 10:08 有梦就能实现 阅读(457) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们来综合比较NOT IN VS NOT EXISTS VS LEFT JOIN...IS NULL的性能,简短的内容,深入的理解,Always to review the basics。 NOT IN、NOT EXISTS、LEFT JOIN...IS NULL性能分析 我们首先创建测试 阅读全文
posted @ 2017-08-02 10:03 有梦就能实现 阅读(262) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们来分析LEFT JOIN和NOT EXISTS,简短的内容,深入的理解,Always to review the basics。 LEFT JOIN...IS NULL和NOT EXISTS分析 之前我们已经分析过IN查询在处理空值时是基于三值逻辑,只要子查询中存在空值此时则没有任何数 阅读全文
posted @ 2017-08-02 10:01 有梦就能实现 阅读(447) 评论(0) 推荐(0) 编辑
摘要:前言 前面我们学习了NOT EXISTS和NOT IN的比较,当然少不了EXISTS和IN的比较,所以本节我们来学习EXISTS和IN的比较,简短的内容,深入的理解,Always to review the basics。 初步探讨EXISTS和IN 我们创建表Table1并且取出前面创建BigTa 阅读全文
posted @ 2017-08-02 09:59 有梦就能实现 阅读(410) 评论(0) 推荐(0) 编辑
摘要:前言 上一节我们分析了INNER JOIN和IN,对于不同场景其性能是不一样的,本节我们接着分析NOT EXISTS和NOT IN,简短的内容,深入的理解,Always to review the basics。 初步探讨NOT EXISTS和NOT IN NOT EXISTS和NOT IN有很大的 阅读全文
posted @ 2017-08-02 09:57 有梦就能实现 阅读(319) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们来讲讲联接综合知识,我们在大多教程或理论书上都在讲用哪好,哪个性能不如哪个的性能,但是真正讲到问题的实质却不是太多,所以才有了本系列每一篇的篇幅不是太多,但是肯定是我用心去查找许多资料而写出,简短的内容,深入的理解,Always to review the basics。 初次探讨IN 阅读全文
posted @ 2017-08-02 09:55 有梦就能实现 阅读(299) 评论(0) 推荐(0) 编辑
摘要:前言 这一节我们还是继续讲讲索引知识,前面我们讲了聚集索引、非聚集索引以及覆盖索引等,在这其中还有一个过滤索引,通过索引过滤我们也能提高查询性能,简短的内容,深入的理解,Always to review the basics。 过滤索引,在查询条件上创建非聚集索引(1) 过滤索引是SQL 2008的 阅读全文
posted @ 2017-08-02 09:46 有梦就能实现 阅读(414) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们再来穿插讲讲索引知识,后续再讲数据类型中的日期类型,简短的内容,深入的理解,Always to review the basics。 强制索引查询条件 前面我们也讲了一点强制索引查询的知识,本节我们再来完整的讲述下 (1)SQL Server使用默认索引 USE TSQL2012 GO 阅读全文
posted @ 2017-08-02 09:16 有梦就能实现 阅读(1271) 评论(0) 推荐(0) 编辑
摘要:前言 终于等到这一天,我要开始重新系统学习数据库了,关于数据库这块,不出意外的话,每天会定时更新一篇且内容不会包含太多,简短的内容,深入的理解,Always to review the basics。 SQL语句类别 SQL语句包括以下三个类别 (1)数据定义语言(Data Definnition 阅读全文
posted @ 2017-08-02 08:51 有梦就能实现 阅读(305) 评论(0) 推荐(0) 编辑
摘要:前言 本节我们继续SQL之旅,本节我们如题来讲讲一些基本知识以及需要注意的地方,若有不妥之处,还望指出,简短的内容,深入的理解,Always to review the basics。 数据库架构和对象 数据库包含架构,而架构又包含对象,架构可以看做是表、视图、存储过程等对象的容器。架构是一个命名空 阅读全文
posted @ 2017-08-02 08:43 有梦就能实现 阅读(438) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示