sql >> データベース >  >> RDS >> Sqlserver

テーブルまたはビューの列のリストを取得するにはどうすればよいですか?

    SQL Server 2008 R2 (他のバージョンの中でも特に) には、すべてのデータベースで自動的に提供されるシステム ビューがあります。テーブルが存在するデータベースに接続している限り、次のようなクエリを実行できます:

    DECLARE @TableViewName NVARCHAR(128)
    SET @TableViewName=N'MyTableName'
    
    SELECT b.name AS ColumnName, c.name AS DataType, 
    b.max_length AS Length, c.Precision, c.Scale, d.value AS Description
    FROM sys.all_objects a
    INNER JOIN sys.all_columns b
    ON a.object_id=b.object_id
    INNER JOIN sys.types c
    ON b.user_type_id=c.user_type_id
    LEFT JOIN sys.extended_properties d
    ON a.object_id=d.major_id AND b.column_id=d.minor_id AND d.name='MS_Description'
    WHERE [email protected]
    AND a.type IN ('U','V')
    

    もちろん、これは出発点にすぎません。すべてのデータベースで利用できる他の多くのシステム ビューと列があります。これらは、SQL Server Management Studio の Views > "System Views" で見つけることができます。



    1. テーブルからアイテムを再帰的に削除するにはどうすればよいですか?

    2. IBM Worklight-ストアード・プロシージャーを呼び出すときにOUTパラメーターを取得する方法は?

    3. Doctrine2はid列のデフォルトにシーケンスを設定しません(postgres)

    4. アラビア語のテキスト出力phpmysqlutf-8変換の問題