PHP数据库批量去注释、删字段

复制代码
复制代码
<?php

$host = "localhost";
$username = 'root';
$password = 'root';
$database = 'dbname';

$filters = ['content','payload'];

$pdo = new PDO("mysql:host={$host};dbname={$database}", $username, $password, array(PDO::ATTR_PERSISTENT => true));
$pdo->exec("set names 'utf8'");

$info = $pdo->query('SHOW TABLE STATUS;')->fetchAll(PDO::FETCH_ASSOC);

foreach ($info as $key => $value) {
// 删除所有表注释 $pdo
->exec("ALTER TABLE " . $value['Name'] . " COMMENT '';");
$info
= $pdo->query("select * from information_schema.columns where table_name = '" . $value['Name'] . "'")->fetchAll(PDO::FETCH_ASSOC); foreach ($info as $i => $ivalue) {
        // 删除整个数据库所有表中,存在在$filters数组中的列
if (in_array($ivalue['COLUMN_NAME'], $filters)) { $pdo->exec("ALTER TABLE " . $value['Name'] . " DROP COLUMN " . $ivalue['COLUMN_NAME'] . ";"); echo "删除表" . $value['Name'] . "中的:" . $ivalue['COLUMN_NAME']; echo " "; }
// 删除所有表的所有字段的注释 $pdo
->exec("ALTER TABLE " . $value['Name'] . " MODIFY COLUMN " . $ivalue['COLUMN_NAME'] . " " . $ivalue['COLUMN_TYPE'] . " COMMENT '';"); echo "删除表" . $value['Name'] . "中的:" . $ivalue['COLUMN_NAME'] . "字段的注释"; echo " "; } }
复制代码

 

复制代码

 

posted @   河在谈  阅读(173)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示