我正在使用带有 Propel 插件和 MySQL 数据库的 Symfony 1.1。为了获得结果,我将查询传递给 Propel 连接并调用 executeQuery()。
当我的查询未获取任何结果时,我正在尝试检索我的 ResultSet 的列名。当它有结果时,我所要做的就是获取数组键名。当我没有结果时,getRow() 返回 false,因此我无法提取任何数组键。
我的查询由多个具有别名的列名的表组成。
在仍然使用 Propel 对象的同时,还有其他方法可以获取列名吗?
MySQL 的 Creole 驱动程序使用“经典”MySQL 函数,您也可以这样做。mysql_fetch_field()
即使没有返回任何行,您也可以获取有关特定字段的信息。您只需要传递正确的结果资源,就可以通过getResource()
.ResultSet
SHOW COLUMNS FROM `table_name`;
如果是混凝土表,那么您可以按照上面所说的进行(SHOW COLUMNS FROM table_name
;)。
但是,如果您有一个复杂的查询,一种解决方案可能是使用正则表达式解析字符串。