日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
SQLServer數(shù)據(jù)字典的HTML格式

以下的文章主要是介紹SQL Server數(shù)據(jù)字典的HTML格式,SQL Server數(shù)據(jù)字典的HTML格在實際中的應用比例還是占為多數(shù)的,如果你對這一技術(shù),心存好奇的話,以下的文章將會揭開它的神秘面紗。

運行下面的腳本來生成數(shù)據(jù)字典,并保存結(jié)果到一個擴展名為“.htm”的文件中。

生成數(shù)據(jù)字典的示例T-SQL腳本

 
 
 
  1. Set nocount on   
  2. DECLARE @TableName nvarchar(35)   
  3. DECLARE Tbls CURSOR   
  4. FOR   
  5. Select distinct Table_name   
  6. FROM INFORMATION_SCHEMA.COLUMNS   
  7. --put any exclusions here   
  8. --where table_name not like '%old'   
  9. order by Table_name   
  10. OPEN Tbls   
  11. PRINT ''   
  12. FETCH NEXT FROM Tbls   
  13. INTO @TableName   
  14. WHILE @@FETCH_STATUS = 0   
  15. BEGIN   
  16. PRINT '
    '   
  17. PRINT ''   
  18. Print '' + @TableName + ''   
  19. PRINT '
    '   
  20. --Get the Description of the table   
  21. --Characters 1-250   
  22. Select substring(cast(Value as varchar(1000)),1,250) FROM   
  23. sys.extended_properties A   
  24. WHERE A.major_id = OBJECT_ID(@TableName)   
  25. and name = 'MS_Description' and minor_id = 0   
  26. --Characters 251-500   
  27. Select substring(cast(Value as varchar(1000)),251, 250) FROM   
  28. sys.extended_properties A   
  29. WHERE A.major_id = OBJECT_ID(@TableName)   
  30. and name = 'MS_Description' and minor_id = 0   
  31. PRINT ''   
  32. --Set up the Column Headers for the Table   
  33. PRINT 'Column Name'   
  34. PRINT 'Description'   
  35. PRINT 'InPrimaryKey'   
  36. PRINT 'IsForeignKey'   
  37. PRINT 'DataType'   
  38. PRINT 'Length'   
  39. PRINT 'Numeric Precision'   
  40. PRINT 'Numeric Scale'   
  41. PRINT 'Nullable'   
  42. PRINT 'Computed'   
  43. PRINT 'Identity'   
  44. PRINT 'Default Value'   
  45. --Get the Table Data   
  46. SELECT '',   
  47. '',   
  48. '' + CAST(clmns.name AS VARCHAR(35)) + '',   
  49. '' + substring(ISNULL(CAST(exprop.value AS VARCHAR(255)),''),1,250),   
  50. substring(ISNULL(CAST(exprop.value AS VARCHAR(500)),''),251,250) + '',   
  51. '' + CAST(ISNULL(idxcol.index_column_id, 0)AS VARCHAR(20)) + '',   
  52. '' + CAST(ISNULL(   
  53. (SELECT TOP 1 1   
  54. FROM sys.foreign_key_columns AS fkclmn   
  55. WHERE fkclmn.parent_column_id = clmns.column_id   
  56. AND fkclmn.parent_object_id = clmns.object_id   
  57. ), 0) AS VARCHAR(20)) + '',   
  58. '' + CAST(udt.name AS CHAR(15)) + '' ,   
  59. '' + CAST(CAST(CASE WHEN typ.name IN (N'nchar', N'nvarchar') AND clmns.max_length <> -1   
  60. THEN clmns.max_length/2   
  61. ELSE clmns.max_length END AS INT) AS VARCHAR(20)) + '',   
  62. '' + CAST(CAST(clmns.precision AS INT) AS VARCHAR(20)) + '',   
  63. '' + CAST(CAST(clmns.scale AS INT) AS VARCHAR(20)) + '',   
  64. '' + CAST(clmns.is_nullable AS VARCHAR(20)) + '' ,   
  65. '' + CAST(clmns.is_computed AS VARCHAR(20)) + '' ,   
  66. '' + CAST(clmns.is_identity AS VARCHAR(20)) + '' ,   
  67. '' + isnull(CAST(cnstr.definition AS VARCHAR(20)),'') + ''   
  68. FROM sys.tables AS tbl   
  69. INNER JOIN sys.all_columns AS clmns   
  70. ON clmns.object_id=tbl.object_id   
  71. LEFT OUTER JOIN sys.indexes AS idx   
  72. ON idx.object_id = clmns.object_id   
  73. AND 1 =idx.is_primary_key   
  74. LEFT OUTER JOIN sys.index_columns AS idxcol   
  75. ON idxidxcol.index_id = idx.index_id   
  76. AND idxcol.column_id = clmns.column_id   
  77. AND idxcol.object_id = clmns.object_id   
  78. AND 0 = idxcol.is_included_column   
  79. LEFT OUTER JOIN sys.types AS udt   
  80. ON udt.user_type_id = clmns.user_type_id   
  81. LEFT OUTER JOIN sys.types AS typ   
  82. ON typ.user_type_id = clmns.system_type_id   
  83. AND typtyp.user_type_id = typ.system_type_id   
  84. LEFT JOIN sys.default_constraints AS cnstr   
  85. ON cnstr.object_id=clmns.default_object_id   
  86. LEFT OUTER JOIN sys.extended_properties exprop   
  87. ON exprop.major_id = clmns.object_id   
  88. AND exprop.minor_id = clmns.column_id   
  89. AND exprop.name = 'MS_Description'   
  90. WHERE (tbl.name = @TableName and   
  91. exprop.class = 1) --I don't wand to include comments on indexes   
  92. ORDER BY clmns.column_id ASC   
  93. PRINT ''   
  94. FETCH NEXT FROM Tbls   
  95. INTO @TableName   
  96. END   
  97. PRINT ''   
  98. CLOSE Tbls   
  99. DEALLOCATE Tbls   

 

這個腳本將被安排作為一個工作來運行,所以你不需要擔心要手動更新文檔。

因為你將文檔存儲在數(shù)據(jù)庫中,所以你不必擔心擁有多個拷貝并指出哪個是***的。它還會與數(shù)據(jù)庫一起備份。

以上的相關(guān)內(nèi)容就是對HTML格式的SQL Server數(shù)據(jù)字典 的介紹,望你能有所收獲。


分享標題:SQLServer數(shù)據(jù)字典的HTML格式
網(wǎng)頁網(wǎng)址:http://m.5511xx.com/article/dpigsdh.html