ホームページ > データベース > mysql チュートリアル > SQL Server にテーブルとフィールドの情報をクエリするにはどうすればよいですか?

SQL Server にテーブルとフィールドの情報をクエリするにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-05 14:15:40
オリジナル
745 人が閲覧しました

How to Query SQL Server for Table and Field Information?

テーブルとフィールドの情報をデータベースにクエリする

ORM を作成するとき、データベース内のテーブルと各テーブルの関連フィールドのリストを取得する必要がある場合があります。 。 SQL Server でこれを実現するには、システム ストアド プロシージャまたはデータベース ビューの利用を検討してください。

システム ストアド プロシージャの利用

1 つの方法では、sp_tables などのシステム ストアド プロシージャを使用してテーブルのリストを取得します。各テーブルについて、sp_columns を使用して列情報を取得できます。

例:

EXEC sp_tables @table_type = 'TABLE'
ログイン後にコピー

データベース ビューの活用

または、次のこともできます。 sys.objects や sys.columns などのデータベース ビューを利用してオブジェクトをクエリしますカタログ:

クエリ 1 (sys.objects および sys.columns を使用):

SELECT
  T.name AS Table_Name,
  C.name AS Column_Name,
  P.name AS Data_Type,
  C.max_length AS Size,
  CAST(P.precision AS VARCHAR) + '/' + CAST(P.scale AS VARCHAR) AS Precision_Scale
FROM
  sys.objects AS T
JOIN
  sys.columns AS C ON T.object_id = C.object_id
JOIN
  sys.types AS P ON C.system_type_id = P.system_type_id
WHERE
  T.type_desc = 'USER_TABLE';
ログイン後にコピー

クエリ 2 (使用) INFORMATION_SCHEMA.COLUMNS):

SELECT
  TABLE_SCHEMA,
  TABLE_NAME,
  COLUMN_NAME,
  ORDINAL_POSITION,
  COLUMN_DEFAULT,
  DATA_TYPE,
  CHARACTER_MAXIMUM_LENGTH,
  NUMERIC_PRECISION,
  NUMERIC_PRECISION_RADIX,
  NUMERIC_SCALE,
  DATETIME_PRECISION
FROM
  INFORMATION_SCHEMA.COLUMNS;
ログイン後にコピー

追加リソース

SQL Server ブログ リソースをさらに詳しく調べるには、以下:

  • [DBALink](http://dbalink.wordpress.com/2008/10/24/querying-the-object-catalog-and-information-schema-views/)

以上がSQL Server にテーブルとフィールドの情報をクエリするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート