SQL_VARIANT_PROPERTYを使ってカラムの基本データ型を取得する

記事内に広告が含まれています。

SQLサーバーで定義されているテーブルのカラムの基本データを取得する方法です。

カラムの基本データ型取得

SQLサーバーで定義されているテーブルのカラムの基本データを取得します。

SQL_VARIANT_PROPERTYを使う

テーブルのカラムの基本データを取得するにはSQL_VARIANT_PROPERTYを利用します。

実行するSQL

以下が実行するSQLです。

SELECT
     SQL_VARIANT_PROPERTY( CAST(  1  AS SMALLINT )              , 'BaseType' ) AS カラム属性A
    ,SQL_VARIANT_PROPERTY( CAST( '1' AS CHAR )                  , 'BaseType' ) AS カラム属性B
    ,SQL_VARIANT_PROPERTY( CAST( '1' AS VARCHAR )               , 'BaseType' ) AS カラム属性C
    ,SQL_VARIANT_PROPERTY( CAST( '2013/05/01' AS DATE )         , 'BaseType' ) AS カラム属性D
    ,SQL_VARIANT_PROPERTY( CAST( '2013/05/01' AS SMALLDATETIME ), 'BaseType' ) AS カラム属性E
    ,SQL_VARIANT_PROPERTY( NULL                                 , 'BaseType' ) AS カラム属性F

実行結果

上記の実行結果は

カラム属性A カラム属性B カラム属性C カラム属性D カラム属性E カラム属性F
smallint char varchar date smalldatetime NULL

になります。

SQL_VARIANT_PROPERTYの第1引数にはテーブルのカラム指定できるので、それによってテーブルのカラム属性を取得できます。

第2引数に関しては以下を参照してください。

SQL_VARIANT_PROPERTY (Transact-SQL)
タイトルとURLをコピーしました