php 之批量生成 mysql 语句 注释
工作需要 需要更新 所有表的注释 不影响原结构之上进行更新
<?php
class Ceshi extends CI_Controller{
function __construct()
{
parent::__construct();
/* 加载项 */
$this->load->model('Convers', 'conv');
}
/**
/**
* 获取所有数据
*/
public function ceshi(){
//获取所有的账户信息
$result=$this->conv->getAdmininfo();
//获取所有的专家信息
$result11=$this->conv->getPart11();
//循环账户信息
//获取账户的uid和名称
//将名称和专家的单位想比较 然后进行替换uid
foreach($result as $val){
foreach($result11 as $val1){
//这里更新的是 某些数据没有单位 是以id显示的 所以统一更新为单位
// if($val1['danweimingcheng_12']!==$val1['xuhao_12']){
// $a=$this->conv->SaveName($val1['id'],$val1['danweimingcheng_12']);
// if($a>0){
// echo "更新成功单位为".$val1['danweimingcheng_12']."</br>";
// }
// }else{
// continue;
// }
if($val['admin_name']==$val1['xuhao_12']){
$a=$this->conv->SaveUid($val1['id'],$val['admin_id']);
if($a>0){
echo "更新成功ID为".$val1['id']."</br>";
}
}else{
continue;
}
}
}
}
public function uptijiao(){
//省厅提交 学校提交
$result11=$this->conv->getPart11();
$result=$this->conv->getAdmininfo();
//学校提交为1; xx_tijiao
//省厅提交为1 st_tijiao
foreach($result as $val){
foreach($result11 as $val1){
if($val1['uid']==$val['admin_id']){
$data['xx_tijiao']=1;
$data['st_tijiao']=1;
$a=$this->conv->SaveST($val1['id'],$data);
if($a>0){
echo "更新成功ID为".$val1['id']."</br>";
}
}else{
continue;
}
}
}
}
//获取表的注释:
public function getdescs(){
//获取表结构
$talbe=$this->conv->getTable();
foreach($talbe as $v){
echo "--当前表:".$v."----</br>";
//var_dump($this->conv->getDesc($v));
$ceshi=$this->conv->getDesc($v);
//循环查询表的字段信息
foreach($ceshi as $val){
// $this->AlterContent($v,$val);
if($val['Collation']=="utf8_general_ci"){
$where="CHARACTER SET utf8 COLLATE {$val['Collation']}";
}else{
$where="";
}
if($val['Null']=="YES"){
$nus="NULL";
}else{
$nus="NOT NULL";
}
if($val['Default']=="NULL"){
$defaul=" ";
}else{
$defaul="DEFAULT '{$val['Default']}' ";
}
echo "ALTER TABLE `{$v}` CHANGE `{$val['Field']}` `{$val['Field']}` {$val['Type']} {$where} {$nus} {$defaul} COMMENT '{$val['Comment']}';"."</br>";
}
}
}
//情况分析第一种
function AlterContent($v,$val){
//编码不为null 但是 允许空值
if($val['Collation']=="utf8_general_ci" && $val['Null']=="YES" ){
echo "ALTER TABLE {$v} CHANGE {$val['Field']} {$val['Field']} {$val['Type']} CHARACTER SET utf8 COLLATE {$val['Collation']} NULL DEFAULT {$val['Default']} COMMENT '{$val['Comment']}';"."</br>";
}
//编码不为null 但是不 允许空值
if($val['Collation']=="utf8_general_ci" || $val['Null']=="No"){
echo "ALTER TABLE {$v} CHANGE {$val['Field']} {$val['Field']} {$val['Type']} CHARACTER SET utf8 COLLATE {$val['Collation']} NOT NULL DEFAULT '{$val['Default']}' COMMENT '{$val['Comment']}';"."</br>";
}
if($val['Collation']!="utf8_general_ci" || $val['Null']=="YES"){
echo "ALTER TABLE {$v} CHANGE {$val['Field']} {$val['Field']} {$val['Type']} CHARACTER SET utf8 COLLATE {$val['Collation']} NOT NULL DEFAULT '{$val['Default']}' COMMENT '{$val['Comment']}';"."</br>";
}
if($val['Collation']!="utf8_general_ci" || $val['Null']=="No"){
echo "ALTER TABLE {$v} CHANGE {$val['Field']} {$val['Field']} {$val['Type']} CHARACTER SET utf8 COLLATE {$val['Collation']} NOT NULL DEFAULT '{$val['Default']}' COMMENT '{$val['Comment']}';"."</br>";
}
}
}
model
<?php
/**
* @Name DownLoadModel.php
* @Note 数据下载模型
* @Author caotl
* @Created 2016-01-05 11:22:14
* @Version go!cms 1.0.0
*
*/
class Convers extends CI_Model
{
function __construct()
{
parent::__construct();
} public function getAdmininfo(){ $result=$this->db->get('t_admin_info')->result_array(); return $result; } public function getPart11(){ $result=$this->db->get('t_part11')->result_array(); return $result; } public function SaveUid($id,$uid){
$row=$this->db->where('id',$id)->update('t_part11',array('uid'=>$uid)); return $row;
}
/**
* 修改同样的名称
*/
public function SaveName($id,$name){
$row=$this->db->where('id',$id)->update('t_part11',array('xuhao_12'=>$name)); return $row;
} //学校更新省厅更新
public function SaveST($id,$data){
$row=$this->db->where('id',$id)->update('t_part11',$data); return $row;
} //获取所有的表名称 public function getTable(){
$row=$this->db->list_tables(); //获取所有的表数组 return $row;
} public function getDesc($str=""){
//$rows="show create table ".$str;
$rows="SHOW FULL COLUMNS FROM ".$str;
$query=$this->db->query($rows);
$result=$query->result_array();
return $result;
} }
?>
php 之批量生成 mysql 语句 注释的更多相关文章
- 将表里的数据批量生成INSERT语句的存储过程 增强版
将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件 ...
- 将表里的数据批量生成INSERT语句的存储过程 继续增强版
文章继续 桦仔兄的文章 将表里的数据批量生成INSERT语句的存储过程 增强版 继续增强... 本来打算将该内容回复于桦仔兄的文章的下面的,但是不知为何博客园就是不让提交!.... 所以在这里贴出来吧 ...
- powerdesigner生成mysql带注释的ER图
1.安装PowerDesigner的 参考 https://blog.csdn.net/sinat_34104446/article/details/79885141 2配置逆向工程 2.1新建模型p ...
- 通过存储过程批量生成spool语句
过存储过程批量生成spool语句 CREATE OR REPLACE PROCEDURE pro_yx_full_txt IS export_handle UTL_FILE.file_type; v_ ...
- 转载-用excel批量生成insert语句
用excel批量生成insert语句 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/h ...
- 批量生成sql语句,难得
在工作我们常常要批量生成sql文件,因为业务部门经常给我们的是excel文件,根据我的经验,推荐两种批量生成sql文件方式 1.excel批量生成sql ,sql语句如下 INSERT INTO Ta ...
- 自由导入你的增量数据-根据条件将sqlserver表批量生成INSERT语句的存储过程实施笔记
文章标题: 自由导入你的增量数据-根据条件将sqlserver表批量生成INSERT语句的存储过程增强版 关键字 : mssql-scripter,SQL Server 文章分类: 技术分享 创建时间 ...
- python批量生成SQL语句
1,首先写一条能运行成功插入SQL的语句 INSERT INTO sign_guest(realname,phone,email,sign,event_id)VALUES("jack&quo ...
- 将表里的数据批量生成INSERT语句的存储过程
有时候,我们需要将某个表里的数据全部导出来,迁移到另一个相同结构的库中,这里可以采取一个简便的方法,通过一个存储过程批量导出数据并生成SQL语句,非常方便.存储过程如下: )) as begin de ...
随机推荐
- interp1一维数据插值在matlab中的用法
转载:https://ww2.mathworks.cn/help/matlab/ref/interp1.html?s_tid=srchtitle#btwp6lt-2_1 interp1 一维数据插值( ...
- 浅谈BSGS
用于求解形如\(a^x≡b\mod p\)的最小非负整数解\(x\). 由欧拉定理\(a^{\phi(p)}≡1\mod p\)可以知道,我们找的解如果有解则一定在\(\phi(p)\)范围内,而最大 ...
- [C#.NET 拾遗补漏]09:数据标注与数据校验
数据标注(Data Annotation)是类或类成员添加上下文信息的一种方式,在 C# 通常用特性(Attribute)类来描述.它的用途主要可以分为下面这三类: 验证 Validation:向数据 ...
- 安装redis,phpstudy
第一步: 先下载一下我分享自己的百度网盘里面的资料,网友们下载即可 链接:https://pan.baidu.com/s/1SVO-yAEqbFuvhiiI6Dm3VQ 提取码:u8t0 复制这段内容 ...
- 用ip xfrm搭ipsec隧道
拓扑如下 基本的IP配置就不说了,直接写重点,在LS上配置 #配置SA ip xfrm state add src 194.168.10.4 dst 194.168.10.5 proto esp sp ...
- linux centos 05
centos7安装mariadb 1.yum 得配置yum源,配置阿里云的 两个 yum源 ,阿里云的yum源中,会有 mariadb的软件包 阿里云的yum仓库中,mariadb版本如下 mar ...
- ScanTailor-ScanTailor 强大的多方位的满足处理扫描图片的需求
ScanTailor 强大的多方位的满足处理扫描图片的需求 ScanTailor 能做什么? 批量或单张或选择区间旋转图片 自动切割页面,同时提供手动选项 自动识别图像歪斜角度,同时提供手动选项 ...
- spring boot:spring security用mysql数据库实现RBAC权限管理(spring boot 2.3.1)
一,用数据库实现权限管理要注意哪些环节? 1,需要生成spring security中user类的派生类,用来保存用户id和昵称等信息, 避免页面上显示用户昵称时需要查数据库 2,如果需要在页面上显示 ...
- zabbix安装中文语言包及中文乱码的解决(zabbix5.0)
一,zabbix不能配置中文界面的问题: 1, zabbix5.0 系统安装后,web界面不能选择使用中文 系统提示: You are not able to choose some of the l ...
- if当中是赋值怎么办
1.Java中,赋值是有返回值的 ,赋什么值,就返回什么值.比如这题,x=y,返回y的值,所以括号里的值是1. 2.Java跟C的区别,C中赋值后会与0进行比较,如果大于0,就认为是true:而Jav ...