如何让你的SQL运行得更快!
[ 2005-06-15 15:59:59 | 作者: admin ]
标题 如何让你的SQL运行得更快! 选择自 hansbj 的 Blog
关键字 如何让你的SQL运行得更快!
出处
一、不合理的索引设计
----例:表record有620000行,试看在不同的索引下,下面几个 SQL的运行情况:
---- 1.在date上建有一非个群集索引
select count(*) from record where date >
'19991201' and date < '19991214'and amount >
2000 (25秒)
select date,sum(amount) from record group by date
(55秒)
select count(*) from record where date >
'19990901' and place in ('BJ','SH') (27秒)
...
阅读全文…
关键字 如何让你的SQL运行得更快!
出处
一、不合理的索引设计
----例:表record有620000行,试看在不同的索引下,下面几个 SQL的运行情况:
---- 1.在date上建有一非个群集索引
select count(*) from record where date >
'19991201' and date < '19991214'and amount >
2000 (25秒)
select date,sum(amount) from record group by date
(55秒)
select count(*) from record where date >
'19990901' and place in ('BJ','SH') (27秒)
...
阅读全文…
sqlhelper使用指南
[ 2005-06-15 15:55:49 | 作者: admin ]
摘要:Data Access Application Block 是一个 .NET 组件,包含优化的数据访问代码,可以帮助用户调用存储过程以及向 SQL Server 数据库发出 SQL 文本命令。它返回 SqlDataReader、DataSet 和 XmlReader 对象。您可以在自己的 .NET 应用程序中将其作为构造块来使用,以减少需要创建、测试和维护的自定义代码的数量。您可以下载完整的 C# 和 Visual Basic .NET 源代码以及综合文档。
简介
您是否正在从事 .NET 应用程序数据访问代码的设计和开发?您是否觉得自己总是在反复编写相同的数据访问代码?您是否曾经将数据访问代码包装在 Helper 函数中,以便能够在一行中调用存储过程?如果是,那么 Microsoft® Data Access Application Block for .NET 正是为您设计的。
...
阅读全文…
简介
您是否正在从事 .NET 应用程序数据访问代码的设计和开发?您是否觉得自己总是在反复编写相同的数据访问代码?您是否曾经将数据访问代码包装在 Helper 函数中,以便能够在一行中调用存储过程?如果是,那么 Microsoft® Data Access Application Block for .NET 正是为您设计的。
...
阅读全文…
Panel属性 contentEditable="true" 的妙用 - 打印
[ 2005-06-15 15:33:52 | 作者: admin ]
不知道各位有没有做过用于打印的Web页。
我帮客户做这个页面的时候,喜欢把某些区域定为contentEditable="true",目的是让客户可以随便修改这些地方。
例如:
<Asp:Panel runat=server contentEditable="true"/>..<Asp:Label runat=server id=PrintTitle Text=PrintTitle/>..</Asp:Panel>
我帮客户做这个页面的时候,喜欢把某些区域定为contentEditable="true",目的是让客户可以随便修改这些地方。
例如:
<Asp:Panel runat=server contentEditable="true"/>..<Asp:Label runat=server id=PrintTitle Text=PrintTitle/>..</Asp:Panel>
程序支持 IIS6 - Web Garden
[ 2005-06-15 15:28:22 | 作者: admin ]
你的程序支持 IIS6 - Web Garden 吗?
很就没有更新BLOG了呵呵。 刚过来深圳,时间都是乱来的~~~
今天帮客户搞定一个部署上的问题,花了我半天的时间。。555。
后来才发现原来是IIS6 Web Garden的问题。
IIS6 Web Garden 指的是一个应用程序可以成多个进程(w3wp.exe)来执行,一次请求使用其中的一个。用这个的主要目的是提高程序的可用性。当其中一个进程发生错误,那么也不会影响其他进程。发生错误的进程可以根据规则关闭,而其他的进程则可以继续工作。
可惜不是每个应用程序都支持Web Garden的。 例如我做的那个就不是。
一般来说 , 不支持 Web Garden 的原因是各应用程序的内存状态是不同的。虽然是访问同一个网站 , 当访问第一个进程时,进程的内存如果纪录了某些重要的信息,而当访问第二个进程...
阅读全文…
很就没有更新BLOG了呵呵。 刚过来深圳,时间都是乱来的~~~
今天帮客户搞定一个部署上的问题,花了我半天的时间。。555。
后来才发现原来是IIS6 Web Garden的问题。
IIS6 Web Garden 指的是一个应用程序可以成多个进程(w3wp.exe)来执行,一次请求使用其中的一个。用这个的主要目的是提高程序的可用性。当其中一个进程发生错误,那么也不会影响其他进程。发生错误的进程可以根据规则关闭,而其他的进程则可以继续工作。
可惜不是每个应用程序都支持Web Garden的。 例如我做的那个就不是。
一般来说 , 不支持 Web Garden 的原因是各应用程序的内存状态是不同的。虽然是访问同一个网站 , 当访问第一个进程时,进程的内存如果纪录了某些重要的信息,而当访问第二个进程...
阅读全文…
获取高精度的时间差,可以用来分析页面运行时间的长短
[ 2005-06-15 15:24:36 | 作者: admin ]
DateTime.Now的精度是很低,这个低的意思是,两次获取的DateTime.Now的Ticks的差,只是一个较大数的整数倍。例如在我的机器上,这个差最小是10.114ms。所以,如果我用DateTime.Now来计算时间差,那么就无法精确到10ms以内。
后来发现ASP.NET的TRACE的精度很高,用Reflector看它的实现,发现了它是使用这两个方法的:
参考MSDN:How To: Time Managed Code Using QueryPerformanceCounter and QueryPerformanceFrequency
我自己了按照这个写了个类,代码如下
using System;
using System.Runtime.InteropServices;
public class A
{
[DllImport("kernel32.dll")]
...
阅读全文…
后来发现ASP.NET的TRACE的精度很高,用Reflector看它的实现,发现了它是使用这两个方法的:
参考MSDN:How To: Time Managed Code Using QueryPerformanceCounter and QueryPerformanceFrequency
我自己了按照这个写了个类,代码如下
using System;
using System.Runtime.InteropServices;
public class A
{
[DllImport("kernel32.dll")]
...
阅读全文…
c#通常什么地方遇到数据库为空 System.DBNull.Value
[ 2005-06-15 15:10:44 | 作者: admin ]
p.s. 读取数据到DataView时(特别是使用left join),经常会遇到值为数据库空为NULL,这个时候需要用 System.DBNull.Value 来判断
通常你会在什么地方遇到DBNull?
今天不只被外包,还要跑到虹桥机场去帮忙实施。可惜来到这里又好象没有什么事干。。:) 刚好可以写写Blog 。
刚好这几天写数据库操作比较多,是时候写写关于DBNull的东西了。
DBNull在DotNet是单独的一个类型 System.DBNull 。它只有一个值 DBNull.Value 。DBNull 直接继承 Object ,所以 DBNull 不是 string , 不是 int , 也不是 DateTime 。。。
但是为什么 DBNull 可以表示数据库中的字符串,数字,或日期呢?原因是DotNet储存这些数据的类(DataRow等)都是以 object 的形式来储存数据的。
...
阅读全文…
通常你会在什么地方遇到DBNull?
今天不只被外包,还要跑到虹桥机场去帮忙实施。可惜来到这里又好象没有什么事干。。:) 刚好可以写写Blog 。
刚好这几天写数据库操作比较多,是时候写写关于DBNull的东西了。
DBNull在DotNet是单独的一个类型 System.DBNull 。它只有一个值 DBNull.Value 。DBNull 直接继承 Object ,所以 DBNull 不是 string , 不是 int , 也不是 DateTime 。。。
但是为什么 DBNull 可以表示数据库中的字符串,数字,或日期呢?原因是DotNet储存这些数据的类(DataRow等)都是以 object 的形式来储存数据的。
...
阅读全文…
Problem quering v_workflow on SQL 2000 ,遇到8094问题
[ 2005-06-15 14:27:03 | 作者: admin ]
author subject: Problem quering v_workflow on SQL 2000
George M. Menegakis
May 5, 2005 09:48:55 GMT
--------------------------------------------------------------------------------
Hello,
I was trying to query v_workflow (as I understand is the view used for producing Service Today views on client) but I get this error:
"Server: Msg 1540, Level 16, State 1, Line 1
...
阅读全文…
George M. Menegakis
May 5, 2005 09:48:55 GMT
--------------------------------------------------------------------------------
Hello,
I was trying to query v_workflow (as I understand is the view used for producing Service Today views on client) but I get this error:
"Server: Msg 1540, Level 16, State 1, Line 1
...
阅读全文…
How do I find the max row size..? 8060 or 8094
[ 2005-06-15 14:12:59 | 作者: admin ]
| Hi,
|
| How do I find the max row size for a particular table?
| This was the error I recieved while execting my proc with the relevant
| i/p I need to:
|
| "cannot sort a row of size 8192, which is greater than the allowable
| maximum of 8094"
|
| I also understand that the max bytesize of a row is 8060 bytes.But
| whtz this 8094?
|
| TIA,
| Seetha
Each datapage can ...
阅读全文…
|
| How do I find the max row size for a particular table?
| This was the error I recieved while execting my proc with the relevant
| i/p I need to:
|
| "cannot sort a row of size 8192, which is greater than the allowable
| maximum of 8094"
|
| I also understand that the max bytesize of a row is 8060 bytes.But
| whtz this 8094?
|
| TIA,
| Seetha
Each datapage can ...
阅读全文…