No.2ベストアンサー
- 回答日時:
昔、以下のSQLを作ったことがあります。
2005では問題なかったです。私の用はこれで足りたので必要に応じて修正してみてください。
SELECT
b.name as "Table名",
a.name as "カラム名",
c.name as "データ型",
a.column_id as "カラム順",
a.max_length as "データ長",
a.precision,
a.scale ,
case when a.is_nullable =0 then 'Null不可'
else 'NUll可' end as "NULL",
case when a.is_identity =0 then '×'
else '○' end as "オートナンバー",
case when a.default_object_id = 0 then '×'
else d.definition end as 'デフォルト値',
case when f.index_column_id is not null AND e.is_primary_key = 1 then 'PK'
else '×' end as 'PK'
FROM sys.columns as a
Left outer JOIN sys.objects as b
ON a.object_id = b.object_id
Left outer JOIN sys.types as c
ON a.system_type_id = c.system_type_id
Left outer JOIN sys.default_constraints as d
ON a.default_object_id = d.object_id
Left outer JOIN sys.indexes as e
ON a.object_id = e.object_id
AND e.is_primary_key = 1
Left outer JOIN sys.index_columns as f
ON a.object_id = f.object_id
AND a.column_id = f.column_id
WHERE b.type = 'U'
AND c.name != 'sysname'
ORDER BY b.name,a.column_id
No.1
- 回答日時:
そのためのストアドがデフォルトで用意されています。
[カラム情報取得]
sp_columns
[ @table_name = ] object
[ , [ @table_owner = ] owner ]
[ , [ @table_qualifier = ] qualifier ]
[ , [ @column_name = ] column ]
[ , [ @ODBCVer = ] ODBCVer ]
詳細はヘルプかMSDNをご覧ください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SQL Server [SQLServer] テーブル名からカラム名を取得する 1 2022/08/23 21:20
- MySQL MySQLのテーブル作成で 自信がありません。 2 2022/08/28 05:35
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- Oracle sqlで質問です。 idを元にidに紐付くデータで住所コードがjpのみのデータ以外のidを取得したい 4 2023/03/20 17:41
- Oracle SQLについて教えて下さい。 主キーを持ったカラムを主キーの機能を持たせたまま カンマ区切りで文字列 1 2023/03/27 22:47
- Oracle SQLの書き方について 1 2023/04/13 09:54
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- Oracle sql(oracle)で質問です。 テーブルAのカラム名、日付(yyyymmdd)の値を テーブルB 2 2023/01/06 10:31
- MySQL sqlにおけるテーブル名と各カラム名って 具体的に何ですか? 私は良くphpmyadminを使います 3 2023/05/18 14:10
- Oracle Oracleですがsqlで質問です。 サブクエリ内で番号というカラムで昇順の1レコード目を取得したい 3 2023/05/22 10:02
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで最後の文字だけ置き...
-
副問合せの書き方について
-
sqlで、600行あるテーブルを100...
-
書籍の内容はまともでしょうか?
-
SQLサーバから、項目の属性(型...
-
阪急三番街 ATM(ゆうちょ)は...
-
【MySQL】本当に困っているので...
-
DataTableで重複行を削除したい
-
SQL Left Join で重複を排除す...
-
Unionした最後にGROUP BYを追加...
-
1対多結合で多を絞り込み条件と...
-
php+mysqlで複数選択削除について
-
PL/SQLの変数について
-
[MySQL] UNIQUE制約の値を更新...
-
LAST_INSERT_IDで同時にアクセ...
-
Access パラメータクエリをcsv...
-
画像とカテゴリーを出力したい...
-
マイクラPC版のコマンドで効率...
-
Mysql でレコードを追加した時...
-
VMwareがCDドライブを認識する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで最後の文字だけ置き...
-
SQL Left Join で重複を排除す...
-
副問合せの書き方について
-
SQLサーバから、項目の属性(型...
-
VIEWの元のテーブルのindexって...
-
select文のwhere句に配列を入れ...
-
selectした大量データをinsert...
-
センノシド異性体構造式
-
Unionした最後にGROUP BYを追加...
-
insertを高速化させたい
-
SQLにて特定の文字を除いた検索...
-
マイクラPC版のコマンドで効率...
-
ある条件の最大値+1を初番する...
-
inner joinをすると数がおかし...
-
sqlで、600行あるテーブルを100...
-
エクセルの関数について教えて...
-
Access パラメータクエリをcsv...
-
URL と行番号の指定
-
複数テーブルのGROUP BY の使い...
-
PL/SQLの変数について
おすすめ情報