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 ...
随机推荐
- 在Windows7中打开照片,提示“Windows 照片查看器无法显示此图片,因为计算机上的可用内存可能不足。....”
在Windows7中打开照片,提示"Windows 照片查看器无法显示此图片,因为计算机上的可用内存可能不足.请关闭一些目前没有使用的程序或者释放部分硬盘空间(如果硬盘几乎已满),然后重试. ...
- TP5上传图片到七牛云,并且删除七牛云的图片
一,通过composer 下载七牛云 sdk composer require qiniu/php-sdk 二,手动下载七牛云sdk 1,https://developer.qiniu.com/kod ...
- ConcurrentHashMap原理分析(一)-综述
概述 ConcurrentHashMap,一个线程安全的高性能集合,存储结构和HashMap一样,都是采用数组进行分桶,之后再每个桶中挂一个链表,当链表长度大于8的时候转为红黑树,其实现线程安全的基本 ...
- background-size 详解
backgroun-size:cover; .是按照等比缩放铺满整个区域.主要用于图片比div小的时候,将图片按照某一边的比例扩大以填充整个div背景. .优点:图片不会被拉升,且实用于div长度和宽 ...
- Git hub加载慢?下载慢?浏览慢?几个小技巧让你一键起飞!
记得,那是一个风和日丽,艳阳高照的夜晚,只因为当初的一次回眸,于是便决然走向了程序员的道路,从此,CV大法心中记,代码伴我身. 这一天,正当我打开电脑准备开开心心的使用CV大法完成任务的时候,却恼人的 ...
- Geoserver发布shp文件
Geoserver是著名的开源GIS软件之一.也是项目中常用的地图服务软件.基于geoserver和Openlayers就可以构建一个免费的开源GIS项目. Geoserver除了浏览以外,其他譬如发 ...
- pychartdir模块安装
python模块pychartdir导入问题 在迁移别人写好的脚本时,发现pychartdir没有导入,脚本执行报错.以下是报错内容: [modps@LGJF-ZYC5-MMSC-WEB02 ~]$ ...
- MySQL设置慢查询
MySQL的慢查询日志是用来记录在MySQL中响应时间超过阀值的语句,则会被记录到慢查询日志中(运行时间超过long_query_time值的SQL语句): 慢查询相关参数: slow_query ...
- Ubuntu 18.04 LTS IP 地址设置
和之前的版本不太一样, Ubuntu 18.04 的 ip地址设置是用netplan管理的 配置文件在: /etc/netplan/50-cloud-init.yaml 示例文件如下: # T ...
- Java 第三课 数组排序
1.java.util.Arrays.sort(arr) //升序 2.冒泡排序:相邻元素比较 for (int i=0; i <arr.length-1; i++){//内部遍历一次,确定最 ...