列出SQL Server中具有默认值的所有字段的语句
2022-11-12 09:51:08
内容摘要
这篇文章主要为大家详细介绍了列出SQL Server中具有默认值的所有字段的语句,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!专家解答
文章正文
这篇文章主要为大家详细介绍了列出SQL Server中具有默认值的所有字段的语句,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
专家解答 通过查询任何数据库中的三个系统表,你可以获得每个表的每一个字段的默认值。下面是这个核心查询。它返回分配给当前数据库中每个用户表的默认值。这个查询在SQL 2000和SQL 2005中都是兼容的。 Quote:代码如下:
1 2 3 4 5 6 | <code>SELECT SO.NAME AS "Table Name" , SC.NAME AS "Column Name" , SM.TEXT AS "Default Value" FROM dbo.sysobjects SO INNER JOIN dbo.syscolumns SC ON SO.id = SC.id LEFT JOIN dbo.syscomments SM ON SC.cdefault = SM.id WHERE SO.xtype = 'U' ORDER BY SO.[name], SC.colid </code> |

代码如下:
1 2 3 4 5 6 | <code>SELECT SO.NAME AS "Table Name" , SC.NAME AS "Column Name" , SM.TEXT AS "Default Value" FROM dbo.sysobjects SO INNER JOIN dbo.syscolumns SC ON SO.id = SC.id LEFT JOIN dbo.syscomments SM ON SC.cdefault = SM.id WHERE SO.xtype = 'U' AND SM.TEXT IS NOT NULL ORDER BY SO.[name], SC.colid </code> |
代码如下:
1 2 3 4 5 6 | <code>SELECT SO.NAME AS "Table Name" , SC.NAME AS "Column Name" , SM.TEXT AS "Default Value" FROM dbo.sysobjects SO INNER JOIN dbo.syscolumns SC ON SO.id = SC.id INNER JOIN dbo.syscomments SM ON SC.cdefault = SM.id WHERE SO.xtype = 'U' ORDER BY SO.[name], SC.colid </code> |

代码如下:
1 2 3 4 5 | <code>SELECT ST.[name] AS "Table Name" , SC.[name] AS "Column Name" , SD.definition AS "Default Value" , SD.[name] AS "Constraint Name" FROM sys.tables ST INNER JOIN sys.syscolumns SC ON ST.[object_id] = SC.[id] INNER JOIN sys.default_constraints SD ON ST.[object_id] = SD.[parent_object_id] AND SC.colid = SD.parent_column_id ORDER BY ST.[name], SC.colid </code> |

注:关于列出SQL Server中具有默认值的所有字段的语句的内容就先介绍到这里,更多相关文章的可以留意
代码注释