Kiedy robisz SHOW COLUMNS
lub DESCRIBE TABLE
, tak naprawdę używasz wbudowanej specjalnej bazy danych o nazwie INFORMATION_SCHEMA
, aby pobrać informacje o nazwanej tabeli. Zabawne jest to, że nie zwraca informacji w postaci tabeli, więc nie jest możliwe, aby dane zwracane przez te funkcje działały jak tabela (do sortowania, podkwerendowania itp.).
szczęście, można utworzyć własne zapytanie do wykonywania tego samego odnośnika jak pokazać lub opisywać:
select COLUMN_NAME as 'Field',
COLUMN_TYPE as 'Type',
IS_NULLABLE as 'Null',
COLUMN_KEY as 'Key',
COLUMN_DEFAULT as 'Default',
EXTRA as 'Extra'
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'my table' and
TABLE_SCHEMA = 'my database'
-- add ordering --
order by Type;
bok, aby OP: Dzięki za danie mi motywację, aby spojrzeć w górę, jak to zrobić ponownie. Kiedyś wiedziałem, jak to zrobić, ale zapomniałem.
Powiązane, jeśli to interesujące, napisałem * Opisz wszystkie tabele * w [tej odpowiedzi] (http://stackoverflow.com/a/38679580). Możesz zmienić 'order by' , wyłamując się z ich cmd i wchodząc w ten rodzaj elastycznego. – Drew