programing

PHP에서 MySQL 테이블 구조를 얻으려면 어떻게 해야 합니까?그리고 모든 테이블의 목록?

starjava 2023. 10. 19. 21:47
반응형

PHP에서 MySQL 테이블 구조를 얻으려면 어떻게 해야 합니까?그리고 모든 테이블의 목록?

데이터베이스에서 주어진 표의 구조를 얻으려면 PHP에서 어떤 쿼리를 실행해야 합니까?그리고 어떤 쿼리를 실행해야 모든 테이블의 목록을 얻을 수 있습니까?

테이블에 대한 열 목록을 가져오려면 DESCEL SQL 문을 사용합니다.구문은 다음과 같습니다.

DESCRIBE TableName

데이터베이스의 테이블 목록을 가져오려면 다음 SQL 문을 사용합니다.

SHOW TABLES
$q = mysql_query('DESCRIBE tablename');
while($row = mysql_fetch_array($q)) {
    echo "{$row['Field']} - {$row['Type']}\n";
}

http://www.electrictoolbox.com/mysql-table-structure-describe/ 에서 발견했습니다.

CREATE 구문 사용을 가져오려면 다음과 같이 하십시오.

SHOW CREATE TABLE table_name;

information_schema 데이터베이스도 살펴봅니다.데이터베이스, 테이블, 인덱스 등에 대한 매우 유용한 정보가 많습니다.

참조: MySQL에서 특정 이름을 가진 모든 테이블을 찾는 방법은 무엇입니까?

사용할 수 있는 필드에 대한 설명을 잊어버립니다.

SHOW FULL COLUMNS FROM table_name;

알림 키워드 FULL, 이것이 MySQL이 응답에 권한과 주석 정보를 포함하도록 만드는 이유입니다.

MYSQLI로 업데이트:

데이터베이스와 연결

function conectadb($banco) 
{
$endereco = "localhost";
$usuario  = "root";
$senha    = "";
try
{
    $con = new mysqli($endereco, $usuario, $senha, $banco);
    $con->set_charset("utf8"); // acentuação
    return $con;
}
catch (Exception $e)
{
    echo "<h1>Falha</h1><br/>";
    echo $e->getMessage();
    die();
}
}

열 표 표시:

function show_table($tabela)
{
$conexao=conectadb('venda');
$sql = "DESCRIBE $tabela";
$result = $conexao->query($sql);
while ($coluna = $result->fetch_assoc()) 
{
    echo "<p>".$coluna['Field']." - ";
    echo $coluna['Type']."</p>";
}

}


$result= mysqli_query($conn, "DESCRIBE your_table");
 while($table = mysqli_fetch_array($result)) 
{ 
  echo($table[0]." ".$table[1]." ". $table[2]." ". $table[3]." ". $table[4]);  
 }

언급URL : https://stackoverflow.com/questions/468458/how-do-i-get-the-mysql-table-structure-in-php-plus-a-list-of-all-tables

반응형