首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

CUBRID 學習筆記 21:用 SHOW CREATE TABLE 查看主鍵、外鍵、索引完整定義

     編輯:MySQL 綜合教學

CUBRID 學習筆記 21:用 SHOW CREATE TABLE 查看主鍵、外鍵、索引完整定義

核心命令

SHOW CREATE TABLE table_name;

注意:需在 Web 管理工具的 SQL 標籤頁 執行,而非 Query 標籤頁。

輸出範例解析

SHOW CREATE TABLE game;
===  ===
TABLE                 CREATE TABLE
============================================
'game' 'CREATE TABLE game (
    host_year INTEGER NOT NULL,
    event_code INTEGER NOT NULL,
    athlete_code INTEGER NOT NULL,
    stadium_code INTEGER NOT NULL,
    nation_code CHARACTER(3),
    medal CHARACTER(1),
    game_date DATE,
    CONSTRAINT pk_game_host_year_event_code_athlete_code PRIMARY KEY (host_year, event_code, athlete_code),
    CONSTRAINT fk_game_event_code FOREIGN KEY (event_code) REFERENCES event ON DELETE RESTRICT ON UPDATE RESTRICT,
    CONSTRAINT fk_game_athlete_code FOREIGN KEY (athlete_code) REFERENCES athlete ON DELETE RESTRICT ON UPDATE RESTRICT
)'
1 row selected.

關鍵信息提取

  • 主鍵:CONSTRAINT pk_... PRIMARY KEY (host_year, event_code, athlete_code)(聯合主鍵)。
  • 外鍵:
    • fk_game_event_code → 關聯 event 表,ON DELETE RESTRICT、ON UPDATE RESTRICT。
    • fk_game_athlete_code → 關聯 athlete 表,同樣限制刪改。

替代查詢:系統表 db_index

-- 查主鍵索引
SELECT * FROM db_index WHERE class_name = 'game' AND is_primary_key = 'YES';

-- 查所有索引
SELECT * FROM db_index WHERE class_name = 'game';

配合 Web 管理工具圖形化展示,更直觀。

小結

SHOW CREATE TABLE 是獲取完整 DDL(含約束命名、引用動作)的最快方式,配合系統表查詢可做自動化元數據採集。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved