很多時(shí)候,大家都是要 “接過(guò)別人手中的槍” ,在已有的代碼上進(jìn)行開(kāi)發(fā)、修改……所以,很多時(shí)候,總是對(duì)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不是很熟悉,影響工作的效率,浪費(fèi)大量時(shí)間在查閱數(shù)據(jù)庫(kù)存儲(chǔ)結(jié)構(gòu)上。(當(dāng)然了,用GUI類數(shù)據(jù)庫(kù)工具的可能除外。)
因?yàn)槲冶容^依賴VIM + mysql client 的開(kāi)發(fā)環(huán)境,所以,寫了個(gè)PHP小腳本,一下子把所有表的create語(yǔ)句生成到一個(gè)文件夾中,并使用列表來(lái)管理,這樣在vim中可以用gf熱鍵,一下子就跳到那個(gè)表的定義,個(gè)人認(rèn)為比較方便。
為什么不把所有的語(yǔ)句都存儲(chǔ)到同一個(gè)文件中呢,有以下幾個(gè)原因:
1. 有的表的中文 comment 編碼格式不對(duì),可能是亂碼,這樣可能會(huì)影響到下面出現(xiàn)的中文;
2. 如果有列表文件的話,比較好管理,一目了然,個(gè)人比較喜歡,呵呵 。
以下為引用的內(nèi)容: /** * 用來(lái)生成MySQL數(shù)據(jù)庫(kù)文檔 * @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'); //數(shù)據(jù)表列表文件 define('SAVE_FILE_NAME' , 'ganji_v3_beijing_tables_list'); //詳細(xì)文檔存入路徑 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:" . 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:" . mysql_error()); } $file_list = "////////////////////////////////////////////"; $file_list .= "Welcome To Mysql_soup_list"; $file_list .= "////////////////////////////////////////////"; $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 .= "//------------------------------------"; $result_soup .= "//------------------------------------"; $result_soup .= "// " . $row_table[0] . ""; $result_soup .= "// " . $row_table[1] . ""; $file_save = SAVE_FILE_FOLDER . '/' . $row_table[0]; } file_put_contents($file_save, $result_soup); $file_list .= DIR_NAME . '/' . $file_save . ""; } file_put_contents(SAVE_FILE_NAME , $file_list); mysql_close($mysql_link); |
大家有沒(méi)有發(fā)現(xiàn): 最后的變量名是result_soup。
轉(zhuǎn)自:http://www.cnblogs.com/amboyna/