2015-10-23 5 views

ответ

2

Это невозможно. Хотя возвращаемое значение выглядит как стандартный набор данных, SQL синтаксический анализатор не допустит в таких стандартных запросов, как это:

SELECT `Create Table` INTO @foo FROM (SHOW CREATE TABLE bar); 

Вы можете свернуть свой собственный, хотя. See this answer for more details.

+0

Спасибо за ваш вклад. код не работает. Я получаю синтаксическую ошибку. Вот что я пробовал: 'SELECT' Create Table' FROM (SHOW CREATE TABLE guardi.accounts) AS s; ' –

+0

Вот почему ответ сказал, что это не позволит! – miken32

2

Вы можете сделать это с результатами, с PHP, например:

function getCreateSQLFromTableName($table){ 
    $sql = "SHOW CREATE TABLE $table"; 
    echo $sql; 
    $res = mysql_query($sql); 
    if($res){ 
     $row = mysql_fetch_assoc($res); 
     $createSQL = $row['Create Table']; 
     return $createSQL; 
    } 
    else{ 
     echo mysql_errno() . ": " . mysql_error(). "\n"; 
    } 


} 
Смежные вопросы