论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP JSP .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > .NET >

A450Asp.Net+Sql购物系统

3.5存储过程的设计

此系统采用基于WEB的B/S三层结构模式来开发:

内容来自论文无忧网 www.paper51.com

用户界面层负责处理用户的输入和向用户的输出,但并不负责解释其含义 paper51.com

商业逻辑层是数据的业务层,建立实际的数据库连接根据用户的请求生成sql语句检索或更新数据库,并把结果返回到用户界面层

内容来自论文无忧网 www.paper51.com

数据库层负责实际的数据检索和存储,这层由具体的存储过程在Sql2000里实现 paper51.com

数据库层――存储过程(StoredProcedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。总的来说,存储过程具有以下一些优点: ◆存储过程允许标准组件式编程 ◆存储过程能够实现较快的执行速度 ◆存储过程能够减少网络流量 ◆存储过程可被作为一种安全机制来充分利用

内容来自论文无忧网 www.paper51.com

例子:

http://www.paper51.com

比如下面的一个存储过程实现功能是――管理员添加商品 内容来自www.paper51.com

CREATE procedure addGoods

paper51.com

( copyright paper51.com

@CateGoryDetailID int,

copyright paper51.com

@modelNumber nvarchar(50),

内容来自www.paper51.com

@modelName nvarchar(50), 内容来自论文无忧网 www.paper51.com

@goodsImage nvarchar(50),

paper51.com

@salePrice money, http://www.paper51.com

@goodsDesc nvarchar(4000) 内容来自论文无忧网 www.paper51.com

) copyright paper51.com

as paper51.com

insert intogoods(CateGoryDetailID,modelNumber,modelName,goodImage,salePrice,goodDescription)

内容来自论文无忧网 www.paper51.com

values(@CateGoryDetailID,@modelNumber,@modelName,@goodsImage,@salePrice,@goodsDesc) 内容来自论文无忧网 www.paper51.com

GO

copyright paper51.com

比如下面的一个存储过程实现功能是――登陆系统 copyright paper51.com

CREATE PROCEDURE login 内容来自论文无忧网 www.paper51.com

( copyright paper51.com

@idName varchar(50),

copyright paper51.com

@pwd varchar(50), paper51.com

@userID int output copyright paper51.com

)

copyright paper51.com

 AS 内容来自论文无忧网 www.paper51.com

select @userID=userID

paper51.com

from Users 内容来自www.paper51.com

where 内容来自www.paper51.com

idName=@idName 内容来自论文无忧网 www.paper51.com

and copyright paper51.com

Pwd=@pwd

内容来自论文无忧网 www.paper51.com

if @@rowcount<1

内容来自www.paper51.com

select userID=0

copyright paper51.com

GO 内容来自论文无忧网 www.paper51.com

几乎系统所有的于数据库操作都在 Sql2000里面,通过存储过程来实现。

内容来自www.paper51.com

3.6 系统关键代码

内容来自论文无忧网 www.paper51.com

通过一个DBO.CS 类来实现, 里面的代码内容包含解释说明如下 内容来自www.paper51.com

using System; copyright paper51.com

using System.Data;

copyright paper51.com

using System.Data.SqlClient; http://www.paper51.com

using System.Data.SqlTypes; 内容来自论文无忧网 www.paper51.com

using System.Configuration; 内容来自www.paper51.com

using System.Web; http://www.paper51.com

using System.Web.UI; http://www.paper51.com

namespace IStore 内容来自www.paper51.com

{

copyright paper51.com

/// <summary>

copyright paper51.com

/// DBO 的摘要说明。

内容来自www.paper51.com

/// </summary>

内容来自www.paper51.com

public class DBO 内容来自论文无忧网 www.paper51.com

copyright paper51.com

public DBO() 内容来自www.paper51.com

{

copyright paper51.com

}

内容来自www.paper51.com

/////////////////////////////////返回商品类别函数

paper51.com

public SqlDataReader GetGoodsCategories(int CateGoryID)

copyright paper51.com

{

内容来自论文无忧网 www.paper51.com

        SqlConnection myConn=newSqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);

内容来自论文无忧网 www.paper51.com

 SqlCommand cmd=newSqlCommand("uListGoods",myConn);

http://www.paper51.com

 cmd.CommandType=CommandType.StoredProcedure;

http://www.paper51.com

     SqlParameterparaCateGoryID=newSqlParameter("@CateGoryID",SqlDbType.Int,4); paper51.com

 paraCateGoryID.Value=CateGoryID; copyright paper51.com

cmd.Parameters.Add(paraCateGoryID);

copyright paper51.com

 myConn.Open();

http://www.paper51.com

 SqlDataReaderdr=cmd.ExecuteReader(CommandBehavior.CloseConnection);

copyright paper51.com

return dr; http://www.paper51.com

}

http://www.paper51.com

////////////////////////////////返回销量最好的几种商品 copyright paper51.com

public SqlDataReader GetMostSoldGoods()

copyright paper51.com

{

内容来自论文无忧网 www.paper51.com

SqlConnectionmyConn=newSqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);

http://www.paper51.com

SqlCommandcmd=newSqlCommand("mostSoldGoods",myConn);

内容来自www.paper51.com

cmd.CommandType=CommandType.StoredProcedure; http://www.paper51.com

myConn.Open();

paper51.com

           SqlDataReader dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);

内容来自论文无忧网 www.paper51.com

        return dr;

paper51.com

   内容来自论文无忧网 www.paper51.com

}

http://www.paper51.com

/////////////////////////////////返回指定种类的所有商品 内容来自www.paper51.com

public DataSet GetGoodsByCate(intcateGoryID)

内容来自www.paper51.com

{ 内容来自论文无忧网 www.paper51.com

SqlConnectionmyConn=new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]); http://www.paper51.com

SqlCommandcmd=newSqlCommand("GetgoodsByCateID",myConn); paper51.com

cmd.CommandType=CommandType.StoredProcedure; http://www.paper51.com

SqlParameterparaCateGoryID=newSqlParameter("@cateGoryID",SqlDbType.Int,4);

内容来自论文无忧网 www.paper51.com

paraCateGoryID.Value=cateGoryID; 内容来自论文无忧网 www.paper51.com

cmd.Parameters.Add(paraCateGoryID); paper51.com

myConn.Open(); copyright paper51.com

SqlDataAdapterda=new SqlDataAdapter();

http://www.paper51.com

da.SelectCommand=cmd;

内容来自论文无忧网 www.paper51.com

DataSet ds =new DataSet();

paper51.com

da.Fill(ds);

copyright paper51.com

ds.Tables["Table"].TableName="goods";

内容来自论文无忧网 www.paper51.com

return ds; http://www.paper51.com

        }

paper51.com

------分隔线----------------------------
联系方式