Documentation Home
MySQL 5.6 リファレンスマニュアル
Download this Manual
PDF (US Ltr) - 27.1Mb
PDF (A4) - 27.1Mb
EPUB - 7.5Mb
HTML Download (TGZ) - 7.2Mb
HTML Download (Zip) - 7.2Mb


MySQL 5.6 リファレンスマニュアル  /  INFORMATION_SCHEMA テーブル  /  INFORMATION_SCHEMA COLUMNS テーブル

21.4 INFORMATION_SCHEMA COLUMNS テーブル

COLUMNS テーブルは、テーブル内のカラムに関する情報を提供します。

INFORMATION_SCHEMA SHOW 備考
TABLE_CATALOG   def
TABLE_SCHEMA    
TABLE_NAME    
COLUMN_NAME Field  
ORDINAL_POSITION   注を参照
COLUMN_DEFAULT Default  
IS_NULLABLE Null  
DATA_TYPE Type  
CHARACTER_MAXIMUM_LENGTH Type  
CHARACTER_OCTET_LENGTH    
NUMERIC_PRECISION Type  
NUMERIC_SCALE Type  
DATETIME_PRECISION Type  
CHARACTER_SET_NAME    
COLLATION_NAME Collation  
COLUMN_TYPE Type MySQL 拡張
COLUMN_KEY Key MySQL 拡張
EXTRA Extra MySQL 拡張
PRIVILEGES Privileges MySQL 拡張
COLUMN_COMMENT Comment MySQL 拡張

:

  • SHOW では、Type 表示には、異なる複数の COLUMNS カラムの値が含まれます。

  • ORDINAL_POSITIONORDER BY ORDINAL_POSITION と記す場合があるため必要です。SHOW とは異なり、SELECT には自動順序付けはありません。

  • CHARACTER_OCTET_LENGTH は、マルチバイト文字セットを除き、CHARACTER_MAXIMUM_LENGTH と同じである必要があります。

  • CHARACTER_SET_NAMECollation から派生できます。たとえば、SHOW FULL COLUMNS FROM t と指定し、Collation カラムに latin1_swedish_ci の値が表示されている場合は、文字セットは最初の下線の前にあるもの、つまり latin1 になります。

  • MySQL 5.6.4 で DATETIME_PRECISION が追加されました。

次のステートメントはほぼ同等です。

SELECT COLUMN_NAME, DATA_TYPE, IS_NULLABLE, COLUMN_DEFAULT
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'tbl_name'
  [AND table_schema = 'db_name']
  [AND column_name LIKE 'wild']

SHOW COLUMNS
  FROM tbl_name
  [FROM db_name]
  [LIKE 'wild']

User Comments
  Posted by Gelo Tiglao on April 12, 2007
This is the equivalent syntax for "all_tab_columns" that is used for Oracle

-Gelomon
  Posted by Jens Lærkedal on August 22, 2010
When using select on INFORMATION_SCHEMA.COLUMNS, observe that it is independent of previous USE <db> statements. This means you should take care if you omit the "TABLE_SCHEMA = <db>". Your result could be a mix of data from other DB instances. This may be trivial, but it did fool me.
  Posted by Shailesh Humbad on September 7, 2015
It should be noted that INFORMATION_SCHEMA.COLUMNS does NOT contain information about temporary tables. To get temporary table column information, you must use SHOW COLUMNS. You can also use SHOW CREATE TABLE or in MySQL 5.7.1, INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO.
Sign Up Login You must be logged in to post a comment.