CREATE PROCEDURE [dbo].[DeleteActivity]
@id int
as 
delete from zu_activity where id=@id
GO如何像这样,光有一个删除语句,也不判断什么逻辑,请问有必要用存储过程吗?在什么情况下使用存储过程最好?请大家发表下自己的看法!

解决方案 »

  1.   

    没必要 
    存储过程是把比较多的SQL语句集中在一起作为一个批来执行 
      

  2.   


    ------------------------------------
    --用途:增加一条记录 
    --项目名称:CodematicDemo
    --说明:
    --时间:2009-4-8 17:37:08
    ------------------------------------
    CREATE PROCEDURE UP_BookAndMagazine_ADD
    @ID int output,
    @BookName varchar(50),
    @Author varchar(50),
    @Publisher varchar(50),
    @PublishDate datetime,
    @BookType varchar(50),
    @Pages int,
    @Format char(10),
    @Languages varchar(50),
    @ISBN varchar(50),
    @HowToTake bit,
    @OverTimePay float,
    @BookMenu varchar(600),
    @SubType int,
    @AboutID int AS 
    INSERT INTO [BookAndMagazine](
    [BookName],[Author],[Publisher],[PublishDate],[BookType],[Pages],[Format],[Languages],[ISBN],[HowToTake],[OverTimePay],[BookMenu],[SubType],[AboutID]
    )VALUES(
    @BookName,@Author,@Publisher,@PublishDate,@BookType,@Pages,@Format,@Languages,@ISBN,@HowToTake,@OverTimePay,@BookMenu,@SubType,@AboutID
    )
    SET @ID = @@IDENTITYGO
    像这样的插入数据语句呢
      

  3.   

    对于数据库系统的程序开发,使用存储过程是个很好的方式。
    优点:
    1、存储过程经过编译优化,在网络传输时减少数据量。
    2、安全,如SQL注入攻击。
    3、作为程序与数据库接口。
      

  4.   

    可放可不放。
    存储过程优点是预编译,速度快。
    写到SQL里可能性能上会差些。对这不同人有不同的看法,看自己 习惯了。