cs_Folder_GetFeeds ALTERPROC[dbo].cs_Folder_GetFeeds @UserIdINT, @SettingsIDint, @FolderIdINT=NULL AS /**//*如果为空执行如下查询,不为空,再执行如下查询。好象什么都没说的样子,省略…………*/ IF (@FolderIdISNULL) BEGIN SELECT cf1.FeedId, cf1.Url, cf1.Title, cf1.Link, cf1.ETag, cf1.LastModified, cf1.Language, cf1.Generator, cf1.SubscribeDate, cf1.LastUpdateDate, cf1.FeedStateId, cff.FolderFeedId ,[UnreadCount]= ( selectcount(*) from (Selecttop50 f.FeedPostID, f.FeedId FROM cs_FeedPost f where f.FeedId = cf1.FeedId orderby PubDate DESC) fp leftouterjoin cs_UserReadPost urp on fp.FeedPostID = urp.FeedPostID where fp.FeedId = cff.FeedId and urp.UserId ISNULL ) FROM cs_Feed AS cf1, cs_FolderFeed AS cff WHERE cff.FeedId = cf1.FeedId AND cff.UserId =@UserId AND cff.FolderId ISNULL AND cf1.SettingsID =@SettingsID ORDERBY cf1.Title END ELSE BEGIN SELECT cf1.FeedId, cf1.Url, cf1.Title, cf1.Link, cf1.Language, cf1.Generator, cf1.ETag, cf1.LastModified, cf1.SubscribeDate, cf1.LastUpdateDate, cf1.FeedStateId, cff.FolderFeedId ,[UnreadCount]= ( selectcount(*) from (Selecttop50 f.FeedPostID, f.FeedId FROM cs_FeedPost f where f.FeedId = cf1.FeedId orderby PubDate DESC) fp leftouterjoin cs_UserReadPost urp on fp.FeedPostID = urp.FeedPostID where fp.FeedId = cff.FeedId and urp.UserId ISNULL ) FROM cs_Feed AS cf1, cs_FolderFeed AS cff WHERE cff.FeedId = cf1.FeedId AND cff.UserId =@UserId AND cff.FolderId =@FolderId AND cf1.SettingsID =@SettingsID ORDERBY cf1.Title END
cs_Folder_DeleteFolder ALTERPROC[dbo].cs_Folder_DeleteFolder @FolderIdINT AS -- First, let's delete any associated feeds. --先删除关联表中的记录 DELETE FROM cs_FolderFeed WHERE FolderId =@FolderId -- Now, delete the folder. --然后再删除主表的记录 DELETE FROM cs_Folder WHERE FolderId =@FolderId