蓝色天空

导航

如果在Community Server 中直接调用存储过程发表新帖子

在论坛里面添加新帖子会调用存储过程:cs_Post_CreateUpdate

cs_Post_CreateUpdate 的各个参数的含义如下:
(
 @SectionID int, --所在板块的ID
 @ParentID int,  --如果为添加新帖子,则为0
 @AllowDuplicatePosts bit, --是否允许重复
 @DuplicateIntervalInMinutes int = 0, --如果不允许重复,在该时间间隔内有效
 @Subject nvarchar(256), --帖子标题
  @UserID int, --用户ID
 @PostAuthor nvarchar(64) = null,--用户昵称
 @Body ntext, --正文
 @FormattedBody ntext, --格式化的正文,可能需要格式化html标记(?)
 @EmoticonID int = 0, --表情ID
 @IsLocked bit, --是否锁定主题,不让回复
 @IsSticky bit, --(?待研究)
 @IsApproved bit = null, --是否自动通过批准
 @StickyDate datetime, --(?待研究)
 @PostType int = 0,--帖子类型
 @PostDate datetime = null, --提交日期
 @UserHostAddress nvarchar(32), --用户IP地址
 @PropertyNames ntext = null, --帖子的附加属性
 @PropertyValues ntext = null, --帖子的附加属性值
 @SettingsID int,  --(?待研究)目前取值为1000
 @IsTracked bit = 0, --是否追踪
 @PostID int out, --帖子ID,输出值
 @ThreadID int=0 out, --主题ID,输出值
 @PostConfiguration int = 0,--帖子配置信息(?待研究)
 @UpdateSectionStatistics bit = 1 --是否更新板块状态
)

例子:
DECLARE @tmpStickyDate datetime
DECLARE @tmpPostDate datetime

select @tmpStickyDate = getDate()
select @tmpPostDate = getDate()

exec cs_Post_CreateUpdate
 @SectionID=3,
 @ParentID=0,
 @AllowDuplicatePosts=1,
 @DuplicateIntervalInMinutes=0,
 @Subject='rest',
 @UserID=2105,
 @PostAuthor='TalkStudy',
 @Body='have a rest!',
 @FormattedBody='have a rest!',
 @EmoticonID=0,
 @IsLocked=0,
 @IsSticky=0,
 @IsApproved=null,
 @StickyDate=@tmpStickyDate,
 @PostType=1,
 @PostDate=@tmpPostDate,
 @UserHostAddress='127.0.0.1',
 @PropertyNames=null,
 @PropertyValues=null,
 @SettingsID=1000,
 @IsTracked=0,
 @PostID=0,
 @ThreadID=0,
 @PostConfiguration=0,
 @UpdateSectionStatistics=1

go

posted on 2005-12-25 18:02  蓝色天空的云  阅读(719)  评论(0编辑  收藏  举报