我们的Joomla插件现在需要一个新的列在它的表上。
因此,对于安装新插件版本的现有安装(旧版本),我们需要检测数据库中缺少该列“Link KimeFiel旗”,然后添加它。
我尝试了几个代码片段,但始终显示以下错误:
“1054“字段列表”中的未知列'linkimageflag'SQL=从nk6px_test_插件中选择linkimageflag”
这是我最后一次尝试的代码:
$querycol = "SELECT linkimageflag FROM #__test_plugin";
$database->setQuery($querycol);
$colresult = $database->query();
//$rows=$数据库->加载对象列表();
if (!$colresult) {
$querycol = "ALTER TABLE #__test_plugin ADD linkimageflag varchar(10) NOT NULL";
$database->setQuery($querycol);
$database->query();
}
采取这种行动的正确准则是什么?
谢谢您。
最佳答案
你可以用
$db = JFactory::getDBO();
$columns = $db->getTableColumns('#__your_table_name');
if(!isset($columns['columnName'])){
// run your query to add column
}