我需要在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] =>
)
非常感谢你。
答案 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。