php form - MySQL 데이터베이스 내의 모든 테이블보기




insert query (5)

테이블을 얻는 방법

1. SHOW TABLES

mysql> USE test;
Database changed
mysql> SHOW TABLES;
+----------------+
| Tables_in_test |
+----------------+
| t1             |
| t2             |
| t3             |
+----------------+
3 rows in set (0.00 sec)

2. SHOW TABLES IN db_name

mysql> SHOW TABLES IN another_db;
+----------------------+
| Tables_in_another_db |
+----------------------+
| t3                   |
| t4                   |
| t5                   |
+----------------------+
3 rows in set (0.00 sec)

3. 정보 스키마 사용하기

mysql> SELECT TABLE_NAME
       FROM information_schema.TABLES
       WHERE TABLE_SCHEMA = 'another_db';
+------------+
| TABLE_NAME |
+------------+
| t3         |
| t4         |
| t5         |
+------------+
3 rows in set (0.02 sec)

OP에

당신은 단지 1 행을 가져 왔습니다. 다음과 같이 수정하십시오.

while ( $tables = $result->fetch_array())
{
    echo $tmp[0]."<br>";
}

그리고 나는 information_schema가 SHOW TABLES 보다 낫다고 생각합니다.

SELECT TABLE_NAME
FROM information_schema.TABLES 
WHERE TABLE_SCHEMA = 'your database name'

while ( $tables = $result->fetch_assoc())
{
    echo $tables['TABLE_NAME']."<br>";
}

데이터베이스에있는 모든 테이블을 표시하려고합니다. 나는 이것을 시도했다 :

$sql = "SHOW TABLES";
$result = $conn->query($sql);
$tables = $result->fetch_assoc();
foreach($tables as $tmp)
{
    echo "$tmp <br>";
}

하지만 그것은 내가 아는 데이터베이스에서 하나의 테이블 이름만을 제공합니다 2. 내가 뭘 잘못하고있는 걸까요?



이 시도:

SHOW TABLES FROM nameOfDatabase;

SHOW TABLE_NAME이 (가) 유효하지 않습니다. 쇼 테이블보기

TD


1. 데이터베이스 만들기

CREATE DATABASE db_name;

2. db_name 데이터베이스의 사용자 이름을 만듭니다.

GRANT ALL PRIVILEGES ON db_name.* TO 'username'@'localhost' IDENTIFIED BY 'password';

3. 데이터베이스 사용

USE db_name;

4. 마지막으로 데이터베이스 db_name에 있으며 create, select 및 insert 작업과 같은 명령을 실행합니다.





php mysql database