Jak wybrać z wyników POKAŻ STATUS TABELI

36

Chciałbym ograniczyć wiersze i kolumny, które wracają z

SHOW TABLE STATUS

polecenie w MySQL 5.1. Czy istnieje sposób na uzyskanie tych samych informacji za pomocą SELECTinstrukcji, dzięki czemu mogę manipulować wynikami w normalny sposób?

Leopd
źródło

Odpowiedzi:

33

Ma więcej kolumn niż POKAŻ STATUS TABELI; ale robi sztuczkę:

SELECT * FROM information_schema.tables WHERE table_schema = DATABASE();

AKTUALIZACJA 2011-06-07 19:02

SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = DATABASE();

Te zapytania działają, jeśli ustawisz bieżącą bazę danych.

Możesz także kodować konkretną bazę danych:

SELECT table_name,Engine,Version,Row_format,table_rows,Avg_row_length,
Data_length,Max_data_length,Index_length,Data_free,Auto_increment,
Create_time,Update_time,Check_time,table_collation,Checksum,
Create_options,table_comment FROM information_schema.tables
WHERE table_schema = 'mysql';
RolandoMySQLDBA
źródło
10
show table status like 'table1';

Nie możesz w ten sposób manipulować kolumnami, ale łatwiej jest wybrać tylko te tabele, które chcesz i uzyskać normalne SHOW TABLE STATUSwyniki.

John L.
źródło
Co ogranicza wiersze, ale nie kolumny, prawda?
Jack Douglas
Poprawny. Nie możesz w ten sposób manipulować kolumnami, ale łatwiej jest wybrać tylko te tabele, które chcesz i uzyskać normalne wyjście STATUS TABELI.
John L
3

Możesz użyć GDZIE lub JAK, jak dla WYBIERZ:

show table status where name='name'; 
gayavat
źródło
2

show table status można używać bez wybierania bieżącej bazy danych:

show table status from DbName where name='TableName';

Zobacz dokumentację :

SHOW TABLE STATUS
    [{FROM | IN} db_name]
    [LIKE 'pattern' | WHERE expr]
ks1322
źródło
-2

Możesz użyć tego zapytania, aby wyświetlić cały schemat informacyjny.

WYBIERZ * Z Information_schema.tables WHERE table_schema = DATABASE ();

lub stenografia:

POKAŻ STATUS TABELI PODOBNE „tableName”

zouhair
źródło
1
W tej odpowiedzi nie widzę niczego, co nie zostało jeszcze opublikowane w innych odpowiedziach.
ypercubeᵀᴹ