# "AddAnnouncement" 存储过程

说明：

本存储过程为门户的某个特殊模块在数据库中添加一项新的声明。输入的参数包括：Title、Expiration Date以及对声明的描述（Description），输出参数是新数据记录的ItemId。

定义：

       CREATE PROCEDURE Portal_AddAnnouncement
       (
           @ModuleID       int,
           @UserName       nvarchar(100),
           @Title          nvarchar(150),
           @MoreLink       nvarchar(150),
           @MobileMoreLink nvarchar(150),
           @ExpireDate     DateTime,
           @Description    nvarchar(2000),
           @ItemID         int OUTPUT
       )
       AS

       INSERT INTO Portal_Announcements
       (
           ModuleID,
           CreatedByUser,
           CreatedDate,
           Title,
           MoreLink,
           MobileMoreLink,
           ExpireDate,
           Description
       )

       VALUES
       (
           @ModuleID,
           @UserName,
           GetDate(),
           @Title,
           @MoreLink,
           @MobileMoreLink,
           @ExpireDate,
           @Description
       )

       SELECT
           @ItemID = @@Identity

用到的数据库表：

Announcements: 如声明门户模块所示，Announcements表中的每条记录都是单条记录。所有的声明模块都将其记录存储在这个表中，所以每项记录包含一个ModuleID，以便一次查询就可以获得所有相关的记录。

Announcements表的主键是ItemID。注意：声明描述限于2000字符以内。