Quando si esegue un SHOW COLUMNS
o un DESCRIBE TABLE
, si sta davvero utilizzando solo il database speciale incorporato denominato INFORMATION_SCHEMA
per estrarre informazioni su una tabella denominata. La cosa divertente è, sembra non restituire le informazioni come una tabella, quindi è impossibile per ottenere i dati restituiti da queste funzioni ad agire come un tavolo (per l'ordinamento, subquerying, etc.).
Fortunatamente, è possibile impostare il proprio query per eseguire la stessa ricerca come SHOW o DESCRIVERE:
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;
Oltre a OP: Grazie per avermi dato stimolo a cercare il modo di farlo di nuovo. Una volta ho saputo come farlo, ma avevo dimenticato.
correlati, se è di interesse, ho scritto un * Descrivere tutte le tabelle * in [questo Risposta] (http://stackoverflow.com/a/38679580). Puoi cambiare l'ordine di rompendo il loro cmd e entrando in questo tipo di flessibile. – Drew