SQL-SERVER2000全局变量
[ 2005-06-15 16:10:56 | 作者: admin ]
全局变量是一种特殊类型的变量,服务器将维护这些变量的值。全局变量以@@前缀开头,不必进行声明,它们属于系统定义的函数。
1.@@rowcount 在每一个T-SQL语句之后,服务器都要将这个变量的值设置为该语句所影响到的总的记录条数,它可以用来确认选择操作的成功与否: Select a,b,c into tab1 from tab2 where a=2 If @@rowcount=0 Print “no rows were copied”
2.@@error 在每一个T-SQL语句之后,服务器都将这个变量的值设置为一个整形值: 0 表示语句执行成功错误编码 该语句执行失败时返回相应的错误编码。在microsoft sql server环境中,此全局变量是所有用于处理错误的基础。 Update tab set a=3 where a=2 Select @interrorcode=@@error
...
阅读全文…
1.@@rowcount 在每一个T-SQL语句之后,服务器都要将这个变量的值设置为该语句所影响到的总的记录条数,它可以用来确认选择操作的成功与否: Select a,b,c into tab1 from tab2 where a=2 If @@rowcount=0 Print “no rows were copied”
2.@@error 在每一个T-SQL语句之后,服务器都将这个变量的值设置为一个整形值: 0 表示语句执行成功错误编码 该语句执行失败时返回相应的错误编码。在microsoft sql server环境中,此全局变量是所有用于处理错误的基础。 Update tab set a=3 where a=2 Select @interrorcode=@@error
...
阅读全文…
重建索引提高sql-server性能
[ 2005-06-15 16:06:59 | 作者: admin ]
重建索引提高sql-server性能
大多数SQL Server表需要索引来提高数据的访问速度,如果没有索引,SQL Server要进行表格扫描读取表中的每一个记录才能找到索要的数据。索引可以分为簇索引和非簇索引,簇索引通过重排表中的数据来提高数据的访问速度,而非簇索引则通过维护表中的数据指针来提高数据的索引。
索引的体系结构:
为什么要不断的维护表的索引?首先,简单介绍一下索引的体系结构。SQL Server在硬盘中用8KB页面在数据库文件内存放数据。缺省情况下这些页面及其包含的数据是无组织的。为了使混乱变为有序,就要生成索引。生成索引后,就有了索引页和数据页,数据页保存用户写入的数据信息。索引页存放用于检索列的数据值清单(关键字)和索引表中该值所在纪录的地址指针。索引分为簇索引和非簇索引,簇索引实质上是将表中的数据排序,就好像是字典的索引目录。非簇索引不对数据排序,它只...
阅读全文…
大多数SQL Server表需要索引来提高数据的访问速度,如果没有索引,SQL Server要进行表格扫描读取表中的每一个记录才能找到索要的数据。索引可以分为簇索引和非簇索引,簇索引通过重排表中的数据来提高数据的访问速度,而非簇索引则通过维护表中的数据指针来提高数据的索引。
索引的体系结构:
为什么要不断的维护表的索引?首先,简单介绍一下索引的体系结构。SQL Server在硬盘中用8KB页面在数据库文件内存放数据。缺省情况下这些页面及其包含的数据是无组织的。为了使混乱变为有序,就要生成索引。生成索引后,就有了索引页和数据页,数据页保存用户写入的数据信息。索引页存放用于检索列的数据值清单(关键字)和索引表中该值所在纪录的地址指针。索引分为簇索引和非簇索引,簇索引实质上是将表中的数据排序,就好像是字典的索引目录。非簇索引不对数据排序,它只...
阅读全文…
FTP命令是Internet用户使用最频繁的命令之一,不论是在DOS还是UNIX操 作系统下使用FTP,都会遇到大量的FTP内部命令。 熟悉并灵活应用FTP的内部 命令,可以大大方便使用者,并收到事半功倍之效。
FTP的命令行格式为: ftp -v -d -i -n -g [主机名] ,其中 -v 显示远程服务器的所有响应信息; -n 限制ftp的自动登录,即不使用; .n etrc文件; -d 使用调试方式; -g 取消全局文件名。
ftp使用的内部命令如下(中括号表示可选项):
1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如: !ls*.zip.
2.$ macro-ame[args]:执行宏定义macro-name.
3.account[password]:提供登录远程系统成功后访问系统资源所需的补 充口令。
...
阅读全文…
FTP的命令行格式为: ftp -v -d -i -n -g [主机名] ,其中 -v 显示远程服务器的所有响应信息; -n 限制ftp的自动登录,即不使用; .n etrc文件; -d 使用调试方式; -g 取消全局文件名。
ftp使用的内部命令如下(中括号表示可选项):
1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如: !ls*.zip.
2.$ macro-ame[args]:执行宏定义macro-name.
3.account[password]:提供登录远程系统成功后访问系统资源所需的补 充口令。
...
阅读全文…
如何让你的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")]
...
阅读全文…