【问题标题】:How can I view the property of a variable (column) in SQL Server [closed]如何在 SQL Server 中查看变量(列)的属性 [关闭]
【发布时间】:2016-03-30 01:55:25
【问题描述】:

例如,如果一个列的值类似于200806,我想知道这个变量是日期变量还是数字变量还是字符变量,我在哪里可以看到?谢谢!

【问题讨论】:

  • 哈???你首先说你有一个列,然后说它是一个变量。无论哪种方式,您都可以查看列或变量的数据类型以了解它是什么数据类型。
  • 如果你指的是 ta 列数据类型,试试这个...stackoverflow.com/questions/13405572/…
  • 如果您想实际操作可能的值数据类型,那么很难做到,因为“20150702”既可以作为整数也可以作为日期......当然,它也可以是字符串......要知道表中的数据类型,您可以随时使用 SELECT * FROM Information_Schema.Columns WHERE Table_Name ='your table name'
  • 您可以使用 sql_variant_property 函数来了解 basetype、precision、scale、totalbytes、collat​​ion 和 maxlength 等属性。它适用于变量和表格列。检查我的一篇博客文章注册它 - arulmouzhi.wordpress.com/2020/03/01/…

标签: sql sql-server types


【解决方案1】:

如果您有 SSMS (SQL Server Management Studio),那么您可以展开 Database -> Tables -> Columns 并找到该列的类型。

否则,请使用sp_help(或)sp_helptext 以及您的表名,如下所示

sp_help your_table_name

【讨论】:

    【解决方案2】:

    试试这个@jenny

    SELECT DATA_TYPE 
    FROM INFORMATION_SCHEMA.COLUMNS
    WHERE TABLE_NAME = 'yourTable' AND COLUMN_NAME = 'yourColumn'
    

    【讨论】:

      【解决方案3】:

      您可以通过查询INFORMATION_SCHEMA.COLUMNS 表来拉取表的列信息:

      SELECT  DATA_TYPE 
      FROM    INFORMATION_SCHEMA.COLUMNS
      WHERE   TABLE_CATALOG = 'YourDatabase'
      AND     TABLE_SCHEMA = 'YourSchema'
      AND     TABLE_NAME = 'YourTable'
      AND     COLUMN_NAME = 'YourColumn'
      

      【讨论】:

        【解决方案4】:

        您可以通过在 SQL Server 中使用TRY_PARSE 来操作列中的实际数据类型,以测试请求的数据类型是否允许;下面是一个示例代码。如您所见,值 200806 被解析为日期

        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 或 TRY_CONVERT,但它们在 SQL 版本和兼容性级别方面有所不同[您需要具有 110 的兼容性才能执行该操作(即 SQL Server 2012+)]。 试试这个

        SELECT
            TRY_CONVERT(decimal,'200806'  )  AS 'decimal check',
            TRY_CONVERT(INT,'200806' )  AS 'integer Check',
            TRY_CONVERT(DATE,'200806' )  AS 'date Check'
        

        如果您总是考虑使用INFORMATION_SCHEMA 从 SQL Server 收集元数据信息。

        【讨论】:

          猜你喜欢
          • 2021-05-24
          • 2018-02-17
          • 1970-01-01
          • 2023-03-04
          • 1970-01-01
          • 2023-01-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多