|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。datagrid|存储历程|分页存储历程代码:
CREATEprocpage
@RecordCountintoutput,
@QueryStrnvarchar(100)=table1,--表名、视图名、查询语句
@PageSizeint=20,--每页的巨细(行数)
@PageCurrentint=1,--要显现的页
@FdShownvarchar(1000)=*,--要显现的字段列表
@IdentityStrnvarchar(100)=id,--主键
@WhereStrnvarchar(200)=1=1andid%11111=0,
@FdOrdernvarchar(100)=id,--排序
@isReturnbit=0
as
declare
@sqlnvarchar(2000)
set@sql=
if@WhereStr=begin
set@WhereStr=1=1
end
declare@tsqlnvarchar(200)
if(@isReturn=1)begin
set@tsql=Nselect@RecordCount=count(*)from+@QueryStr+where+@WhereStr
execsp_executesql@tsql,N@RecordCountintoutput,@RecordCountoutput
end
elsebegin
set@RecordCount=@PageSize*@PageCurrent+1
end
if@PageCurrent=1begin
set@sql=selecttop+cast(@PageSizeasnvarchar(3))++@FdShow+from+@QueryStr+where+@WhereStr+orderby+@IdentityStr
end
elsebegin
set@sql=selecttop+cast(@PageSizeasnvarchar(3))++@FdShow+from+@QueryStr+where+@WhereStr+and+@IdentityStr+>(selectmax(+@IdentityStr+)from(selecttop+cast(@PageSize*(@PageCurrent-1)asnvarchar(10))++@IdentityStr+from+@QueryStr+where+@WhereStr+orderby+@IdentityStr+)ast)orderby+@IdentityStr
end
if@FdOrderand@FdOrder@IdentityStrbegin
set@sql=select*from(+@sql+)ast4867435348493orderby+@FdOrder
end
--print@sql
execute(@sql)
GO
背景代码:
protectedSystem.Web.UI.WebControls.DataGridDataGrid1;
privatevoidPage_Load(objectsender,System.EventArgse)
{
//在此处安排用户代码以初始化页面
if(!Page.IsPostBack)
{
DataGrid1DataBind(1);
}
}
privatevoidDataGrid1DataBind(intpage)
{
SqlConnectionconn=newSqlConnection("server=qq;uid=sa;pwd=***;database=testdb");
SqlCommandcmd=newSqlCommand("page",conn);
cmd.CommandType=CommandType.StoredProcedure;
SqlParameterp1=cmd.Parameters.Add("@RecordCount",SqlDbType.Int);
p1.Direction=ParameterDirection.Output;
SqlParameterp=cmd.Parameters.Add("@PageCurrent",SqlDbType.Int);
p.Value=page;
SqlDataAdapterda=newSqlDataAdapter();
DataSetds=newDataSet();
da.SelectCommand=cmd;
da.Fill(ds);
DataGrid1.DataSource=ds.Tables[0].DefaultView;
intcount=int.Parse(cmd.Parameters["@RecordCount"].Value.ToString());
if(null==ViewState["page"]||""==ViewState["page"].ToString())
{
ViewState["page"]=count.ToString();
}
else
{
count=int.Parse(ViewState["page"].ToString());
}
DataGrid1.VirtualItemCount=count;
DataGrid1.DataBind();
}
privatevoidDataGrid1_PageIndexChanged(objectsource,System.Web.UI.WebControls.DataGridPageChangedEventArgse)
{
DataGrid1.CurrentPageIndex=e.NewPageIndex;
DataGrid1DataBind(e.NewPageIndex+1);
}
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。 |
|