0

0

导出mysql数据库结构并生成列表脚本供VIM使用

php中文网

php中文网

发布时间:2016-06-13 11:38:24

|

1087人浏览过

|

来源于php中文网

原创

  很多时候,大家都是要 “接过别人手中的枪” ,在已有的代码上进行开发、修改……所以,很多时候,总是对数据的存储结构不是很熟悉,影响工作的效率,浪费大量时间在查阅数据库存储结构上。(当然了,用gui类数据库工具的可能除外。)

  因为我比较依赖VIM + mysql client 的开发环境,所以,写了个PHP小脚本,一下子把所有表的create语句生成到一个文件夹中,并使用列表来管理,这样在vim中可以用gf热键,一下子就跳到那个表的定义,个人认为比较方便。

  为什么不把所有的语句都存储到同一个文件中呢,有以下几个原因:

  1. 有的表的中文 comment 编码格式不对,可能是乱码,这样可能会影响到下面出现的中文;

面多多
面多多

面试鸭推出的AI面试训练平台

下载

  2. 如果有列表文件的话,比较好管理,一目了然,个人比较喜欢,呵呵 。

以下为引用的内容:
/**
* 用来生成MySQL数据库文档
* @filename mysql_db_creator.php
* @touch 2009年 09月 07日 星期一 14:33:47 CST
* @author Yufeng Zhang
*/

define('HOST' , '192.168.1.162');
define('PORT' , 3306);
define('USER' , 'zhangyufeng');
define('PASS' , 'zhangyufeng');
define('DB_NAME' , 'beijing');
define('DB_CHARSET' , 'utf8');
//数据表列表文件
define('SAVE_FILE_NAME' , 'ganji_v3_beijing_tables_list');
//详细文档存入路径
define('SAVE_FILE_FOLDER' , 'ganji_v3_beijing');

//定义路径
$path_info = pathinfo(__FILE__);
define('DIR_NAME' , $path_info['dirname']);

if(!is_dir(DIR_NAME . '/' . SAVE_FILE_FOLDER)){
mkdir(DIR_NAME . '/' . SAVE_FILE_FOLDER);
}


$mysql_link = mysql_connect(HOST . ':' . PORT , USER, PASS);
if(!$mysql_link){
die("Counld not connect to Mysql:\n" . mysql_error());
}

mysql_query('use ' . DB_NAME);
mysql_query('set names ' . DB_CHARSET);


$table_resource = mysql_query("SHOW TABLES FROM " . DB_NAME, $mysql_link);
if(!$table_resource){
die("Counld not open DB:\n" . mysql_error());
}

$file_list = "////////////////////////////////////////////\n";
$file_list .= "Welcome To Mysql_soup_list\n";
$file_list .= "////////////////////////////////////////////\n";

$result_soup = '';

while($row = mysql_fetch_row($table_resource)){
$sql = "show create table " . $row[0];
$get_sql = mysql_query($sql , $mysql_link);
$result_soup = '';

if($row_table = mysql_fetch_row($get_sql)){
$result_soup .= "//------------------------------------\n";
$result_soup .= "//------------------------------------\n";
$result_soup .= "// " . $row_table[0] . "\n";
$result_soup .= "// " . $row_table[1] . "\n";
$file_save = SAVE_FILE_FOLDER . '/' . $row_table[0];
}

file_put_contents($file_save, $result_soup);
$file_list .= DIR_NAME . '/' . $file_save . "\n";
}

file_put_contents(SAVE_FILE_NAME , $file_list);
mysql_close($mysql_link);

  大家有没有发现: 最后的变量名是result_soup。

  转自:http://www.cnblogs.com/amboyna/

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Java 项目构建与依赖管理(Maven / Gradle)
Java 项目构建与依赖管理(Maven / Gradle)

本专题系统讲解 Java 项目构建与依赖管理的完整体系,重点覆盖 Maven 与 Gradle 的核心概念、项目生命周期、依赖冲突解决、多模块项目管理、构建加速与版本发布规范。通过真实项目结构示例,帮助学习者掌握 从零搭建、维护到发布 Java 工程的标准化流程,提升在实际团队开发中的工程能力与协作效率。

3

2026.01.12

c++主流开发框架汇总
c++主流开发框架汇总

本专题整合了c++开发框架推荐,阅读专题下面的文章了解更多详细内容。

97

2026.01.09

c++框架学习教程汇总
c++框架学习教程汇总

本专题整合了c++框架学习教程汇总,阅读专题下面的文章了解更多详细内容。

53

2026.01.09

学python好用的网站推荐
学python好用的网站推荐

本专题整合了python学习教程汇总,阅读专题下面的文章了解更多详细内容。

139

2026.01.09

学python网站汇总
学python网站汇总

本专题整合了学python网站汇总,阅读专题下面的文章了解更多详细内容。

12

2026.01.09

python学习网站
python学习网站

本专题整合了python学习相关推荐汇总,阅读专题下面的文章了解更多详细内容。

19

2026.01.09

俄罗斯手机浏览器地址汇总
俄罗斯手机浏览器地址汇总

汇总俄罗斯Yandex手机浏览器官方网址入口,涵盖国际版与俄语版,适配移动端访问,一键直达搜索、地图、新闻等核心服务。

84

2026.01.09

漫蛙稳定版地址大全
漫蛙稳定版地址大全

漫蛙稳定版地址大全汇总最新可用入口,包含漫蛙manwa漫画防走失官网链接,确保用户随时畅读海量正版漫画资源,建议收藏备用,避免因域名变动无法访问。

432

2026.01.09

php学习网站大全
php学习网站大全

精选多个优质PHP入门学习网站,涵盖教程、实战与文档,适合零基础到进阶开发者,助你高效掌握PHP编程。

49

2026.01.09

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.8万人学习

麻省理工大佬Python课程
麻省理工大佬Python课程

共34课时 | 5.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号