album1.txt
上传用户:wenllgg125
上传日期:2020-04-09
资源大小:7277k
文件大小:3k
源码类别:

SCSI/ASPI

开发平台:

Others

  1. if exists (select * from dbo.sysobjects where id = object_id(N'[dnt_createphototags]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
  2. drop procedure [dnt_createphototags]
  3. GO
  4. if exists (select * from dbo.sysobjects where id = object_id(N'[dnt_deletephototags]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
  5. drop procedure [dnt_deletephototags]
  6. GO
  7. if exists (select * from dbo.sysobjects where id = object_id(N'[dnt_getphotolistbytag]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
  8. drop procedure [dnt_getphotolistbytag]
  9. GO
  10. CREATE  PROCEDURE [dnt_createphototags]
  11. @tags nvarchar(55),
  12. @photoid int,
  13. @userid int,
  14. @postdatetime datetime
  15. AS
  16. BEGIN
  17. exec [dnt_createtags] @tags, @userid, @postdatetime
  18. UPDATE [dnt_tags] SET [pcount]=[pcount]+1,[count]=[count]+1
  19. WHERE EXISTS (SELECT [item] FROM [dnt_split](@tags, ' ') AS [newtags] WHERE [newtags].[item] = [tagname])
  20. INSERT INTO [dnt_phototags] (tagid, photoid)
  21. SELECT tagid, @photoid FROM [dnt_tags] WHERE EXISTS (SELECT * FROM [dnt_split](@tags, ' ') WHERE [item] = [dnt_tags].[tagname])
  22. END
  23. GO
  24. CREATE PROCEDURE [dnt_deletephototags]
  25. @photoid int
  26.  AS
  27. BEGIN       
  28. UPDATE [dnt_tags] SET [count]=[count]-1,[fcount]=[fcount]-1 
  29. WHERE EXISTS (SELECT [tagid] FROM [dnt_phototags] WHERE [photoid] = @photoid AND [tagid] = [dnt_tags].[tagid])
  30.     DELETE FROM [dnt_phototags] WHERE [photoid] = @photoid
  31. END
  32. GO
  33. CREATE PROCEDURE [dnt_getphotolistbytag]
  34. @tagid int,
  35. @pageindex int,
  36. @pagesize int
  37. AS
  38. BEGIN
  39. DECLARE @strSQL varchar(2000)
  40. IF @pageindex = 1
  41. BEGIN
  42. SET @strSQL='SELECT TOP ' + STR(@pagesize) + ' [p].[photoid], [p].[title],[p].[filename],[p].[filesize],[p].[username],[p].[userid], [p].[postdate],[p].[comments],[p].[views]  
  43. FROM [dnt_phototags] AS [pt], [dnt_photos] AS [p], [dnt_albums] AS [a] 
  44. WHERE [p].[photoid] = [pt].[photoid] AND [p].[albumid] = [a].[albumid] AND [a].[type] = 0 AND [pt].[tagid] = ' + STR(@tagid) + ' 
  45. ORDER BY [p].[photoid] DESC'
  46. END
  47. ELSE
  48. BEGIN
  49. SET @strSQL='SELECT TOP ' + STR(@pagesize) + ' [p].[photoid], [p].[title],[p].[filename],[p].[filesize],[p].[username],[p].[userid], [p].[postdate],[p].[comments],[p].[views]  
  50. FROM [dnt_phototags] AS [pt], [dnt_photos] AS [p], [dnt_albums] AS [a] 
  51. WHERE [p].[photoid] = [pt].[photoid] AND [p].[albumid] = [a].[albumid] AND [a].[type] = 0 AND [pt].[tagid] = ' + STR(@tagid) + ' 
  52. AND [p].[photoid] < (SELECT MIN([photoid]) FROM (SELECT TOP ' + STR((@pageindex-1)*@pagesize) + ' 
  53. [p].[photoid] FROM [dnt_phototags] AS [pt], [dnt_photos] AS [p], [dnt_albums] AS [a] 
  54. WHERE [p].[photoid] = [pt].[photoid] AND [p].[albumid] = [a].[albumid] AND [a].[type] = 0 AND [pt].[tagid] = ' + STR(@tagid) + ' 
  55. ORDER BY [p].[photoid] DESC) as tblTmp) 
  56. ORDER BY [p].[photoid] DESC'
  57. END
  58. EXEC(@strSQL)
  59. END
  60. GO