如何在SQL Server中查看变量(列)的属性
例如,如果一列的值类似于如何在SQL Server中查看变量(列)的属性,sql,sql-server,types,Sql,Sql Server,Types,例如,如果一列的值类似于200806,我想知道这个变量是日期变量、数字变量还是字符变量,我在哪里可以看到?谢谢 如果您有SSMS(SQL Server Management Studio),则可以展开数据库->表->列并查找该列的类型 否则,请使用sp_help(或)sp_help text以及您的表名,如下所示 sp_help your_table_name 试试这个@jenny SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE
200806
,我想知道这个变量是日期变量、数字变量还是字符变量,我在哪里可以看到?谢谢 如果您有SSMS(SQL Server Management Studio),则可以展开数据库->表->列并查找该列的类型
否则,请使用sp_help
(或)sp_help text
以及您的表名,如下所示
sp_help your_table_name
试试这个@jenny
SELECT DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'yourTable' AND COLUMN_NAME = 'yourColumn'
您可以通过查询
信息\u架构来提取表的列信息。列表:
SELECT DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_CATALOG = 'YourDatabase'
AND TABLE_SCHEMA = 'YourSchema'
AND TABLE_NAME = 'YourTable'
AND COLUMN_NAME = 'YourColumn'
您可以通过在SQL Server中使用来操作列中的实际数据类型,以测试请求的数据类型是否允许;下面是一个示例代码。如您所见,值200806被解析为date
SELECT
TRY_PARSE('200806' AS DECIMAL ) AS 'decimal check',
TRY_PARSE('200806' AS INTEGER) AS 'integer Check',
TRY_PARSE('200806' AS DATE ) AS 'date Check'
您可能还想了解TRY_CAST或here,但它们在SQL版本和兼容性级别方面存在差异[您需要有110个兼容性才能执行该操作(即SQL Server 2012+)。
试试这个
如果您总是考虑从SQLServer收集元数据信息。 嗯???你首先说你有一个列,然后说它是一个变量。无论哪种方式,您都可以查看列或变量的数据类型以了解它是什么数据类型。。。如果您想实际操作可能的数据类型的值,那么很难操作,因为“20150702”同时限定为整数或日期当然,它也可能是字符串。。。要从表中了解数据类型,您可以始终使用SELECT*from Information\u Schema.Columns WHERE table\u Name='your table Name',您可以使用sql\u variant\u属性函数了解诸如basetype、精度、比例、totalbytes、排序规则和maxlength等属性。它适用于变量和表列。请查看我的一篇博客文章-
SELECT
TRY_CONVERT(decimal,'200806' ) AS 'decimal check',
TRY_CONVERT(INT,'200806' ) AS 'integer Check',
TRY_CONVERT(DATE,'200806' ) AS 'date Check'