• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

StoredProcedure在企业网站开发中的应用(1)

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网
             StoredProcedure在企业级网站开发中的应用
                    Writen by pepper_dog999
我们都知道现在为企业开发的网站都以后台结合数据库的应用为主,但企业级的数据库有它的几点要求:
1、数据库的性能要好。由于为企业开发的数据库的记录条的数目有可能很大,所以普通的数据库服务器的性能就不能达到要求了,一般的要使用SQL Server和Orecal一级的数据库服务器。
2、数据库的安全性要求很高。因为企业的很多商业机密都在数据库中,一旦数据库遭到破坏或者是非法的入侵,都会带来无法挽回的损失。
3、事务处理(Transaction)的重要性。在企业级的查询、更改等事务中,均包括了复杂的事务处理,它涉及了锁定(Lock)、回滚(RollBack)等重要的特性。
由上面的几点可以看出,我们在进行企业级的网站数据库的开发中必须做到高性能、高安全性、有事务处理的能力等几个方面。这就需要我们将数据库的执行的过程放到数据库服务器上,对用户隐藏具体的过程,仅让用户提供必要的参数,还要让用户不能直接的操作实际的表项。
我们使用SQL Server上的StoredProcedure就能够很好的来完成这些要求。首先StoredProcedure是在服务器上进行了预编译的,这样它的性能就能够得到保障。再者我们可以只对用户给予执行StoredProcedure的权限,而不将相关表的权限赋予用户。这样的话用户就不能直接的修改表了。下面我举一个简单的狸子来说明:
第一步:在SQL Server上创建一个数据库,我们假设这个数据库的名字是employee。创建一个用于保存员工信息的表member_info,使用下面的Tansact SQL:
    use employee
    go
    create table member_info
    (
        mem_id int primary key clustered
        ,lst_name char(20) not null
        ,fir_name char(20) not null
        ,address char(255) default "no address"
    )
    create index nonclustered index ncl_index_address on member_info(address)
     第二步:在SQL Server上创建一个用户db_user,密码为空,给该用户给予访问employee数据库的能力。
    第三步:创建StoredProcedure,名称为usp_add_info,用来向member_info表中输入数据。使用下面的Transact_SQl:
    use employee
    go
    create procedure usp_add_info
        @inparam1 char(20)
        ,@inparam2 char(20)
        ,@inparam3 char(255)
    as
        insert into employee(lst_name,fir_name,address)
        value(@inparam1,@inparam2,@inparam3)
    第四步:给予db_user用户以执行usp_add_info的权限

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网