目录addons/插件名/controller/Updatesql.php
以下使用一个新增表的参考仅供参考
<?php
namespace addons\插件名\controller;
use think\addons\Controller as Bas;
use think\Controller;
class Updatesql extends Controller
{
public function __construct (){
parent::__construct();
$this->tb_prefix = config()['database']['prefix'];
$this->site_version = strtolower(config()['version']['version']);
$this->version_arr = [
'v0.1'=>$this->v0_1(),
];
}
public function v0_1(){
$ret_data[0][0] = 'tb_add';
$ret_data[0][1] = $this->tb_prefix.'shorturl_url';
$ret_data[0][2] = <<<INFO
CREATE TABLE `zf_shorturl_url` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(50) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
`ctime` int(11) NOT NULL DEFAULT '0',
`utime` int(11) NOT NULL DEFAULT '0',
`uid` int(11) NOT NULL DEFAULT '0',
`ip` varchar(255) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
`pwd` varchar(255) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
`summary` varchar(255) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
`url` text,
`sort` int(11) NOT NULL DEFAULT '0',
`loading` int(11) NOT NULL DEFAULT '5',
`is_adv` tinyint(1) NOT NULL DEFAULT '0',
`status` tinyint(1) NOT NULL DEFAULT '1',
`token` varchar(255) NOT NULL DEFAULT '',
`lang` varchar(50) NOT NULL DEFAULT '',
`lang_pid` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='记录表';
INFO;
$ret_data[0][2] = str_replace('zf_shorturl_url',$this->tb_prefix.'shorturl_url',$ret_data[0][2]);
return $ret_data;
}
public function update($sql_version="",$plugin_version="")
{
$up_arr = [];
foreach($this->version_arr as $k=>$vo){
if($k>$plugin_version){
break;
}
if($sql_version<$k){
$up_arr[$k] = $vo;
}
}
return $up_arr;
}
}
其他的sql使用方法可参考:http://zf-sys.wangmingchang.com/updatesql_show