真的要测试?
尝试用windows live writer发表文章.
SQL Server 存储过程的分页,这个问题已经讨论过几年了,很多朋友在问我,所以在此发表一下我的观点
建立表:
1 2 3 4 5 6 7 8 | CREATE TABLE [TestTable] ( [ID] [int] IDENTITY (1, 1) NOT NULL , [FirstName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL , [LastName] [nvarchar] (100) COLLATE Chinese_PRC_CI_AS NULL , [Country] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [Note] [nvarchar] (2000) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] GO |
当数据库中的数据量很大时,一般从数据库中获取数据列表时,要求进行分页显示,尤其是在网络中.
经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页。现在流行的分页方法一般是检索页面大小的块区的数据,而非检索所有的数据,然后单步执行当前行。
第一种,利用top 及not in进行分页。
1 2 3 4 5 6 7 | select top @PageSize from TableName where [PK] not in (select top @RecordStart [pk] from jobs ) order by pk asc/desc @PageSize是每一页显示的条数。 @TableName 是要求分页的表或者视图,PK是一个唯一字段。 @RecordStart 是记录开始的位置.根据每一页多少条,与第几页,算出来的. 具体算法一般为:@RecordStart=PageSize*(PageNums-1)。 |
该分页算法有以下主要问题,如果用非主键字段(或者非唯一字段)排序,再进行分页时,导致取出来的数据不正确。并且效率不高。
尝试了一下Gridview导出为Excel,原本以为很简单,可是真正应用起来还是不太好弄的,呵呵,所想非所得。总结了一下应该注意下面几点:
1.由于gridview的内容可能是分页显示的,因此,这里在每次导出excel时,先将gridview的allowpaging属性设置为false,然后databind()一下,确保搂到所有数据;
2.不用单独设置导出的路径,导出时会弹出对话框让你确认保存位置;
3.要写一个空的VerifyRenderingInServerForm方法(必须写),以确认在运行时为指定的ASP.NET 服务器控件呈现HtmlForm 控件;
4.导出后别忘记再重新设置其allowpaging属性;
由于GridView的分页功能实在是太弱了,所以需要使用强大的AspNetPager来作为分页控件。最简单的办法就是GridView控件下面接着放一个AspNetPager控件,但是这样好像就不能用GridView的分页功能了。在数据量不大的情况下,使用GridView的分页是十分方便有效的。另外还有一个问题就是分页控件在GridView生成的表格的下面,而没有像GridView自带分页那样包含到表格内部,这点也不是很爽。
要解决以上的问题,可以将AspNetPager放入GridView的分页模板(PagerTemplate)中,如下代码所示:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <asp :GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowPaging="True"> <columns> <asp :BoundField DataField="DmId" HeaderText="序号" ReadOnly="True" SortExpression="DMID"> …… …… <columns> <pagerstyle HorizontalAlign="Center"> <pagertemplate> <asp :AspNetPager ID="AspNetPager1" runat="server" ShowBoxThreshold="5" ShowPageIndexBox="Auto" CenterCurrentPageButton="True"> </asp> </pagertemplate> </pagerstyle></columns></asp> </columns></asp> |
1.将控件放入工具箱的方法是右键点击工具箱,选择添加项目,然后刘览相关dll文件。
2.控件外观的设定
1 2 3 4 5 | <webdiyer :AspNetPager ID="AspNetPager1" runat="server" UrlPaging="true" PageSize="5" ShowCustomInfoSection="Left" NumericButtonTextFormatString="[{0}]" ShowBoxThreshold="5" AlwaysShow="true" OnPageChanged="AspNetPager1_PageChanged </webdiyer:AspNetPager> </webdiyer> |
3.设定总的记录笔数在Page_Load事件里面
阅读全文…
首先你要去
下载一个js的使用代码
调用:
CODE:
<script type="text/javascript" src="md5.js"></script>实现加密:
CODE:
<script type="text/javascript" >或者只要在
hash = hex_md5("input string");
</script>
CODE:
<form onsubmit="pwd.value =hex_md5(pwd.value)">这样做的好处是
CODE:
1.通过这个md5的js生成的代码和php的是一样,减少服务器在md5加密的负担
2.因为密码是直接在客户端就进行加密,不像php要传到服务器端才加密,这样传输过程的安全也得到进一步的加强
最近做一个项目,以前是在公司代码库用svn的形式存放的.后来不知道是什么原因导致代码库丢失了,只在个人电脑上保留了备份.我拿过来之后,发现里面很多svn的文件夹.既然公司的代码库都没了,这个svn也没用了,于是萌生了删除之的想法.但是作为程序员,手工删除也太丢人了吧,于是打算用bat文件来删.看了几天dos命令,得到如下代码:
for /r . %a in (.) do @if exist %a\.svn rd /s /q %a\.svn
ok,解决啦.
© 2008-2009 cloved.cn, Power By WordPress, Design By sheath, WordPress Themes by mg12.
Full RSS - Comments RSS - 粤ICP备09006273号
免责声明:本站所有内容均来源于互联网,若侵犯您的权利,请来信告知,本站会第一时间处理.
最新评论