mysql - Codeigniter mysql 描述

标签 mysql codeigniter bind quotes describe

我对 codeigniter 有点陌生,我正在尝试运行这个简单的查询:

DESCRIBE `table_name`;

我尝试过这个:

$sql = 'DESCRIBE ?';
$desc = $this->db->query($sql, $table)->result();

这会创建此查询:

DESCRIBE 'table_name';

如您所见,当我绑定(bind) $table 变量时,输出了错误的引号;它们是值引号 ('),而不是表引号 (`)。我这样做错了吗?

谢谢!

最佳答案

CodeIgniter 的查询绑定(bind)将为您转义。它假设数据是一个值,而不是表名。

你必须自己逃避这个值。

$table = $this->db->escape_str($table);
$sql = "DESCRIBE `$table`";
$desc = $this->db->query($sql)->result();

关于mysql - Codeigniter mysql 描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4762897/

相关文章:

php - 表单需要将数据发布到 codeigniter 中的 Controller

jquery - 元素.bind ("resize.container", function() { .. } );

mysql - 从另一个表中获取名称,其 ids 存储在主表中的 csv 格式的列中

php - 如何用 Flight_Name 代替 Flight_ID?

mysql - 个别日期的总和

php - sql查询后检查结果是否为 undefined variable

php - codeigniter 配置文件夹结构

mysql - 获取连接表不起作用 codeigniter

class - 单击时如何更改特定(此)按钮类。使用 Vue.js 2.0

r - R中tcltk tktext中的重写事件