在cakephp中显示表查询

时间:2012-12-18 05:02:48

标签: php mysql cakephp

我需要在cakephp中用户show show query我尝试手动编写SHOW table status FROM DATABASE like 'table_name'但我担心的是当我住这个网站时我的数据库名称会相应地更改,我不想手动更改它。

我也试过下面的代码,但我找不到我的桌面细节。

$db =& ConnectionManager::getDataSource('default');
$modelname = "service_requests";
$query = $db->describe($modelname);

我希望我的查询会返回如下所示。

[TABLES] => Array
(
     [Name] => service_requests
     [Engine] => MyISAM
     [Version] => 10
     [Row_format] => Dynamic
     [Rows] => 201
     [Avg_row_length] => 478
     [Data_length] => 96536
     [Max_data_length] => 281474976710655
     [Index_length] => 4096
     [Data_free] => 400
     [Auto_increment] => 202
     [Create_time] => 2012-12-13 17:10:16
     [Update_time] => 2012-12-18 10:27:34
     [Check_time] => 
     [Collation] => utf8_general_ci
     [Checksum] => 
     [Create_options] => 
     [Comment] => 
)

非常感谢你。

1 个答案:

答案 0 :(得分:1)

Ohhh该死的太容易了,而且我太粗暴了。

以下代码对我来说就像魅力一样。

我正在分享此代码,以便帮助其他人。

$database_name = $this->ServiceRequest->getDataSource()->config['database'];

$query = $this->ServiceRequest->query(
             "show table status from 
                 " . $database_name . " 
                like '" . $this->tableName . "'");
pr($query);

我得到了我想要的结果。

感谢您帮助@dskanth和@prodigitalson。