我们的Joomla插件现在需要在其表上添加一个新列.
因此,对于将安装新插件版本的现有安装(旧版本),我们需要在数据库上检测此列"linkimageflag"的缺失,然后添加它.
我尝试了几个代码片段,但它总是显示此错误:
"'字段列表'中的1054未知列'linkimageflag'SQL = SELECT linkimageflag FROM nk6px_test_plugin"
这是我尝试的最后一个代码:
$querycol = "SELECT linkimageflag FROM #__test_plugin";
$database->setQuery($querycol);
$colresult = $database->query();
Run Code Online (Sandbox Code Playgroud)
// $ rows = $ database-> loadObjectList();
if (!$colresult) {
$querycol = "ALTER TABLE #__test_plugin ADD linkimageflag varchar(10) NOT NULL";
$database->setQuery($querycol);
$database->query();
}
Run Code Online (Sandbox Code Playgroud)
执行此类操作的正确代码是什么?
谢谢.
您可以使用
$db = JFactory::getDBO();
$columns = $db->getTableColumns('#__your_table_name');
if(!isset($columns['columnName'])){
// run your query to add column
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1016 次 |
| 最近记录: |