테이블 리스트
1개의 데이터베이스 이름 그룹 안에는 다수의 테이블을 포함하고 있습니다. 데이터베이 스 안에 있는 테이블의 목록을 SQL 명령을 통해서 확인할 수 있습니다.
테이블 목록
현재 선택된 데이터베이스 이름 그룹 안에 들어 있는 모든 테이블명을 출력합니다. 실행 명령은 SHOW TABLES;입니다.
| 쿼리 문법 |
SHOW TABLES;
| 콘솔 실습 화면 |
mysql> show tables;
+----------------+
| Tables_in_jiny |
+----------------+
| members        |
+----------------+
1 row in set (0.00 sec) 
위와 같이 콘솔로 확인해 보면 생성된 테이블의 목록을 확인할 수 있습니다.
목록 출력
PHP를 통하여 데이터베이스명 그룹 안에 있는 테이블의 목록을 출력하도록 하겠습니다.
| PHP 예제 | mysql.class.php 파일에 메서드 예제를 추가합니다.
// 데이터베이스 목록을 읽어 옵니다
public function showTables()
{
            $queryString = "show tables";
            $this->msgEcho($queryString);
            if ($result = mysqli_query($this->dbcon, $queryString)) {
                $rowss = "";
                $row_cnt = mysqli_num_rows($result);
                for ($i=0;$i<$row_cnt;$i++) {
                    $rowss[$i] = mysqli_fetch_object($result);
                }
                $result->free();
                return $rowss;
            } 
}
예제 파일 | sql-12.php
<?php
	include "dbinfo.php";
	include "mysql.class.php";
 
	// ++ Mysqli DB 연결.
	$db = new JinyMysql();
	// 현재 데이터베이스 이름을 확인합니다.
	$dbname = $db->currentDatabase();
	echo "현재 데이터베이스 = ". $dbname . "<br>";
	$key = "Tables_in_".$dbname;
	if($rowss = $db->showTables()){
		echo "tables Count = ". count($rowss) . "<br>";
		for($i=0;$i<count($rowss);$i++){
			echo $i."=";            
			echo $rowss[$i]->$key;
			echo "<br>";
			print_r($rowss[$i]);
			echo "<br>";
		}
	}    
?>
화면 출력
mysql connected!
SELECT DATABASE()
현재 데이터베이스 = jiny
show tables
tables Count = 5
0=members
stdClass Object ( [Tables_in_jiny] => members )
1=members1
stdClass Object ( [Tables_in_jiny] => members1 )
2=members5
stdClass Object ( [Tables_in_jiny] => members5 )
3=orders1
stdClass Object ( [Tables_in_jiny] => orders1 )
4=products
stdClass Object ( [Tables_in_jiny] => products ) 
테이블 상세 정보
SHOW TABLES 명령은 데이터베이스의 테이블의 이름 목록을 출력합니다. 각각의 테이 블의 상세한 정보를 알고 싶을 경우에는 뒤에 STATUS 명령을 함께 사용합니다.
| 쿼리 문법 |
SHOW TABLE STATUS; 
SHOW TABLE STATUS; 쿼리 명령은 테이블 목록과 더불어 테이블의 상세 정보도 같 이 출력합니다.
| 콘솔 실습 화면 |
mysql> show table status;
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+---------------------+-----------------+----------+--------------------+---------+
| Name        | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time         | Update_time         | Check_time          | Collation       | Checksum | Create_options     | Comment |
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+---------------------+-----------------+----------+--------------------+---------+
| board       | InnoDB |      10 | Compact    |    2 |           8192 |       16384 |               0 |            0 |         0 |              7 | 2017-06-11 15:07:15 | NULL                | NULL                | utf8_general_ci |     NULL |                    |         |
| mem_view    | NULL   |    NULL | NULL       | NULL |           NULL |        NULL |            NULL |         NULL |      NULL |           NULL | NULL                | NULL                | NULL                | NULL            |     NULL | NULL               | VIEW    |
| members     | MyISAM |      10 | Dynamic    |    7 |             45 |         316 | 281474976710655 |         2048 |         0 |            101 | 2017-06-07 17:26:47 | 2017-06-07 17:27:46 | 2017-06-11 14:47:08 | utf8_general_ci |     NULL |                    |         |
| members1    | MyISAM |      10 | Dynamic    |   19 |             23 |         448 | 281474976710655 |         2048 |         0 |             20 | 2017-06-01 14:53:34 | 2017-06-06 18:03:45 | NULL                | utf8_general_ci |     NULL | row_format=DYNAMIC |         |
| members3    | MyISAM |      10 | Dynamic    |    0 |              0 |           0 | 281474976710655 |         1024 |         0 |              8 | 2017-06-06 18:55:10 | 2017-06-06 18:55:10 | NULL                | utf8_general_ci |     NULL | row_format=DYNAMIC |         |
| members_1   | MyISAM |      10 | Dynamic    |    6 |             48 |         288 | 281474976710655 |         2048 |         0 |              8 | 2017-06-01 23:55:05 | 2017-06-02 00:20:22 | NULL                | utf8_general_ci |     NULL |                    |         |
| members_all | InnoDB |      10 | Compact    |    0 |              0 |       16384 |               0 |            0 |         0 |           NULL | 2017-06-02 16:59:01 | NULL                | NULL                | utf8_general_ci |     NULL |                    |         |
| orders      | InnoDB |      10 | Compact    |   10 |           1638 |       16384 |               0 |            0 |         0 |             11 | 2017-05-22 15:33:25 | NULL                | NULL                | utf8_general_ci |     NULL |                    |         |
| products    | InnoDB |      10 | Compact    |    2 |           8192 |       16384 |               0 |            0 |         0 |              4 | 2017-05-21 12:50:22 | NULL                | NULL                | utf8_general_ci |     NULL |                    |         |
+-------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+---------------------+-----------------+----------+--------------------+---------+
9 rows in set (0.06 sec)
목록과 출력되는 테이블의 상세 정보는 다음과 같습니다.
- Name
 - Engine
 - Version
 - Row_format
 - Rows
 - Avg_row_length
 - Data_length
 - Max_data_length
 - Index_length
 - Data_free
 - Auto_increment
 - Create_time
 - Update_time
 - Check_time
 - Collation
 - Checksum
 - Create_options
 - Comment
 
또는 셸 명령창에서 mysqlshow -- status DB명으로 확인할 수도 있습니다.
| 터미널 화면 |
C:\Bitnami\wampstack-5.6.30-0\mysql\bin>mysqlshow -u root -p --status jiny
Enter password: ********
Database: jiny
…….
…….
C:\Bitnami\wampstack-5.6.30-0\mysql\bin>
셸 명령을 이용하면 직접 콘솔로 접속하여 SQL 쿼리 명령을 실행하지 않아도 되는 편리함이 있습니다.