db_table_fix_sql

本文整理于网络,仅供阅读参考,如有不妥之处,敬请批评指正!如果您想加入微擎社区版技术大牛微信群和QQ群,请联系微信: ccccyyyy4444 或者 QQ:155120699 

db_table_fix_sql() - 创建修复两张差异表

说明

db_table_fix_sql($schema1, $schema2, $strict = false)

参数

名称 类型 说明
$schema1 string 表结构 需要修复的表
$schema2 string 表结构 基准表
$strict boolean 使用严格模式, 严格模式将会把表2完全变成表1的结构, 否则将只处理表2种大于表1的内容(多出的字段和索引)

示例

$id = array('type' => 'id', 'default' => 12, 'increment' => 'AUTO_INCREMENT');
$sex = array('type' => 'sex', 'default' => 1);
$age = array('type' => 'age', 'default' => 0);
$index = array('fields' => array('id'), 'type' => 'primary');
$table1 = array('tablename' => 'zefeng', 'fields' => array($id, $sex, $age), 'indexes' => array($index), 'engine' => 'InnoDB', 'charset' => 'utf8');
$id = array('type' => 'id', 'default' => 12, 'increment' => 'AUTO_INCREMENT');
$name = array('type' => 'name', 'default' => 11);
$age = array('type' => 'ages', 'default' => 0);
$index = array('fields' => array('name'), 'type' => 'index');
$table2 = array('tablename' => 'zefeng', 'fields' => array($id, $name, $age), 'indexes' => array($index), 'engine' => 'InnoDB', 'charset' => 'utf8');
var_dump(db_table_fix_sql($table1, $table2));
 
array (size=3)
  0 => string 'ALTER TABLE `zefeng` CHANGE `` `` name unsigned NOT NULL DEFAULT '11'' (length=69)
  1 => string 'ALTER TABLE `zefeng` CHANGE `` `` ages unsigned NOT NULL DEFAULT '0'' (length=68)
  2 => string 'ALTER TABLE `zefeng` DROP  PRIMARY KEY , ADD  INDEX `` (`name`)' (length=63)
本页目录
  1. 说明
  2. 参数
  3. 示例
文档统计
浏览次数:175574次
编辑次数:210次历史版本
最近更新:2023-01-16 16:16:34

如果看不懂微擎社区版二次开发手册或者遇到问题,请联系微信: ccccyyyy4444 或者 QQ:155120699 ,如果我们有空闲时间,可以免费为您答疑解惑。