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

A450Asp.Net+Sql购物系统

3.5存储过程的设计

此系统采用基于WEB的B/S三层结构模式来开发: 内容来自论文无忧网 www.paper51.com

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

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

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

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

paper51.com

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

paper51.com

例子:

内容来自www.paper51.com

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

CREATE procedure addGoods 内容来自www.paper51.com

(

copyright paper51.com

@CateGoryDetailID int, copyright paper51.com

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

@modelName nvarchar(50),

copyright paper51.com

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

@salePrice money, 内容来自论文无忧网 www.paper51.com

@goodsDesc nvarchar(4000) copyright paper51.com

) http://www.paper51.com

as

copyright paper51.com

insert intogoods(CateGoryDetailID,modelNumber,modelName,goodImage,salePrice,goodDescription) http://www.paper51.com

values(@CateGoryDetailID,@modelNumber,@modelName,@goodsImage,@salePrice,@goodsDesc) 内容来自www.paper51.com

GO

http://www.paper51.com

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

CREATE PROCEDURE login

http://www.paper51.com

( copyright paper51.com

@idName varchar(50), 内容来自www.paper51.com

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

@userID int output

paper51.com

) http://www.paper51.com

 AS 内容来自www.paper51.com

select @userID=userID

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

from Users paper51.com

where paper51.com

idName=@idName paper51.com

and http://www.paper51.com

Pwd=@pwd http://www.paper51.com

if @@rowcount<1

http://www.paper51.com

select userID=0 http://www.paper51.com

GO

paper51.com

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

3.6 系统关键代码 paper51.com

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

using System;

paper51.com

using System.Data; paper51.com

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

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

using System.Configuration;

copyright paper51.com

using System.Web;

http://www.paper51.com

using System.Web.UI; copyright paper51.com

namespace IStore

http://www.paper51.com

{ copyright paper51.com

/// <summary>

http://www.paper51.com

/// DBO 的摘要说明。 内容来自www.paper51.com

/// </summary> http://www.paper51.com

public class DBO

内容来自www.paper51.com

copyright paper51.com

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

{

paper51.com

}

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

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

paper51.com

public SqlDataReader GetGoodsCategories(int CateGoryID) paper51.com

{

paper51.com

        SqlConnection myConn=newSqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]); 内容来自论文无忧网 www.paper51.com

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

paper51.com

 cmd.CommandType=CommandType.StoredProcedure; 内容来自www.paper51.com

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

http://www.paper51.com

 paraCateGoryID.Value=CateGoryID;

paper51.com

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

 myConn.Open(); paper51.com

 SqlDataReaderdr=cmd.ExecuteReader(CommandBehavior.CloseConnection); 内容来自论文无忧网 www.paper51.com

return dr; copyright paper51.com

} http://www.paper51.com

////////////////////////////////返回销量最好的几种商品

copyright paper51.com

public SqlDataReader GetMostSoldGoods()

paper51.com

{

内容来自www.paper51.com

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

SqlCommandcmd=newSqlCommand("mostSoldGoods",myConn);

paper51.com

cmd.CommandType=CommandType.StoredProcedure; 内容来自www.paper51.com

myConn.Open(); 内容来自论文无忧网 www.paper51.com

           SqlDataReader dr=cmd.ExecuteReader(CommandBehavior.CloseConnection); 内容来自论文无忧网 www.paper51.com

        return dr;

copyright paper51.com

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

}

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; 内容来自论文无忧网 www.paper51.com

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

内容来自www.paper51.com

paraCateGoryID.Value=cateGoryID;

copyright paper51.com

cmd.Parameters.Add(paraCateGoryID);

http://www.paper51.com

myConn.Open();

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

SqlDataAdapterda=new SqlDataAdapter(); 内容来自www.paper51.com

da.SelectCommand=cmd; 内容来自www.paper51.com

DataSet ds =new DataSet(); 内容来自www.paper51.com

da.Fill(ds); paper51.com

ds.Tables["Table"].TableName="goods"; http://www.paper51.com

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

        }

paper51.com

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