.Net学习爱好者的温馨家园

.Net互动平台

导航

随笔分类 -  SQL

SQL注入攻防入门详解
摘要:=============安全性篇目录==============毕业开始从事winfrm到今年转到 web ,在码农届已经足足混了快接近3年了,但是对安全方面的知识依旧薄弱,事实上是没机会接触相关开发……必须的各种借口。这几天把sql注入的相关知识整理了下,希望大家多多提意见。(对于sql注入的攻防,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避免后知后觉的犯下大错,专门查看大量前辈们的心得,这方面的资料颇多,将其精简出自己觉得重要的,就成了该文) 下面的程序方案是采用 ASP.NET + MSSQL,其他技术在设置上会有少许不同。 示例程序下载:SQL注入攻防入门详解_ 阅读全文

posted @ 2013-02-22 11:50 Xt Idt 阅读(1056) 评论(0) 推荐(1)

对于表列数据类型选择的一点思考
摘要:简介 SQL Server每个表中各列的数据类型的选择通常显得很简单,但是对于具体数据类型的选择的不同对性能的影响还是略有差别。本篇文章对SQL Server表列数据类型的选择进行一些探索。一些数据存储的基础知识 在SQL Server中,数据的存储以页为单位。八个页为一个区。一页为8K,一个区为64K,这个意味着1M的空间可以容纳16个区。如图1所示: 图1.SQL Server中的页和区 如图1(PS:发现用windows自带的画图程序画博客中的图片也不错)可以看出,SQL Server中的分配单元分为三种,分别为存储行内数据的In_Row_Data,存储Lob对象的LOB_Data,存. 阅读全文

posted @ 2012-10-12 11:29 Xt Idt 阅读(209) 评论(0) 推荐(0)

(转发)有关T-SQL的10个好习惯
摘要:1.在生产环境中不要出现Select * 这一点我想大家已经是比较熟知了,这样的错误相信会犯的人不会太多。但我这里还是要说一下。 不使用Select *的原因主要不是坊间所流传的将*解析成具体的列需要产生消耗,这点消耗在我看来完全可以忽略不计。更主要的原因来自以下两点: 扩展方面的问题 造成额外的书签查找或是由查找变为扫描 扩展方面的问题是当表中添加一个列时,Select *会把这一列也囊括进去,从而造成上面的第二种问题。 而额外的IO这点显而易见,当查找不需要的列时自然会产生不必要的IO,下面我们通过一个非常简单的例子来比较这两种差别,如图1所示。 图1.*带来的不必要的IO2.声明变量.. 阅读全文

posted @ 2012-10-12 10:58 Xt Idt 阅读(138) 评论(0) 推荐(0)

sqlserver数据库大型应用解决方案总结
摘要:随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天百万级甚至上亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。一、负载均衡技术负载均衡集群是由一组相互独立的计算机系统构成,通过常规网络或专用网络进行连接,由路由器衔接在一起,各节点相互协作、共同负载、均衡压力,对客户端来说,整个群集可以视为一台具有超高性能的独立服务器。1、实现原理实现数据库的负载均衡技术,首先要有一个可以控制连接数据库的控制端。在这里,它截断了数据库和程序的直接连接,由所有的程序来访问这个中间层,然后再由中间层来访问数据库。这样,我们就可以具 阅读全文

posted @ 2012-07-24 16:47 Xt Idt 阅读(165) 评论(0) 推荐(0)

看懂SqlServer查询计划
摘要:对于SqlServer的优化来说,可能优化查询是很常见的事情。关于数据库的优化,本身也是一个涉及面比较的广的话题,本文只谈优化查询时如何看懂SqlServer查询计划。由于我对SqlServer的认识有限,如有错误,也恳请您在发现后及时批评指正。 首先,打开【SQL Server Management Studio】,输入一个查询语句看看SqlServer是如何显示查询计划的吧。说明:本文所演示的数据库,是我写的一个演示程序专用的数据库, 可以在此网页中下载。 select v.OrderID, v.CustomerID, v.CustomerName, v.OrderDate, v.SumM 阅读全文

posted @ 2012-05-14 15:47 Xt Idt 阅读(195) 评论(0) 推荐(0)

SQL—性能优化没有那么神秘
摘要:经常听说SQL Server最难的部分是性能优化,不禁让人感到优化这个工作很神秘,这种事情只有高手才能做。很早的时候我在网上看到一位高手写的博客,介绍了SQL优化的问题,从这些内容来看,优化并不都是一些很复杂的问题,掌握了基本的知识之后也可以尝试优化自己的SQL程序,甚至是其他相关的程序。优化是一些工作积累之后的经验总结和代码意识,只要平时注意积累,你也可以做优化的工作。这一篇随笔是转载,不过我强烈推荐给所有对数据库优化有兴趣的博友,读了这一篇之后下一次别人谈论优化的时候我们这些小菜就可以跟别人侃侃而谈了,不至于面面相觑,不知所措。首先给出地址:http://blog.csdn.net/hai 阅读全文

posted @ 2012-04-27 17:14 Xt Idt 阅读(191) 评论(0) 推荐(0)

SQL—性能分析之执行计划
摘要:一直想找一些关于SQL语句性能调试的权威参考,但是有参考未必就能够做好调试的工作。我深信实践中得到的经验是最珍贵的,书本知识只是一个引导。本篇来源于《Inside Microsoft SQL Server 2008》,有经验的高手尽管拍砖把。 这个部分将讲解一些性能分析工具,这些性能分许主要关注在执行计划。缓存执行计划SQL Server 2008提供了一些服务器对象来分析执行计划Sys.dm_exec_cached_plans: 包含缓存的执行计划,每个执行计划对应一行。Sys.dm_exec_plan_attributes: 这是一个系统函数,每一个执行计划都对应着一些属性,在这个系统函. 阅读全文

posted @ 2012-04-27 16:59 Xt Idt 阅读(255) 评论(0) 推荐(0)

理解.NET中的数据库连接池
摘要:摘要: 连接池能在程度上提高数据库访问性能。本文讨论到底何为连接池,它如何提高数据库访问性能,以及如何在.NET中创建连接池并增加或移除连接。 导言 连接数据库是应用程序中耗费大量资源且相对较慢的操作,但它们又是至关紧要的。连接池是已打开的及可重用的数据库连接的一个容器。连接池在所有的数据库连接都关闭时才从内存中释放。使用连接池最基本的好处是提高应用程序的性能及可伸缩性,而其主要缺点是会有一个... 阅读全文

posted @ 2007-09-27 15:30 Xt Idt 阅读(1114) 评论(0) 推荐(0)