Database dictionary generation
Release: 2016-07-25 08:48:01
Original
1327 people have browsed it
PHP generates data dictionary for mysql database
- /**
- * Generate mysql data dictionary
- */
- header("Content-type: text/html; charset=utf-8");
- //Configure database
- $dbserver = "127.0.0.1 ";
- $dbusername = "root";
- $dbpassword = "";
- $database = "think_team";
- //Other configurations
- $mysql_conn = @mysql_connect("$dbserver", "$dbusername", "$ dbpassword") or die("Mysql connect is error.");
- mysql_select_db($database, $mysql_conn);
- mysql_query('SET NAMES utf8', $mysql_conn);
- $table_result = mysql_query('show tables', $ mysql_conn);
- $no_show_table = array(); //Tables that do not need to be displayed
- $no_show_field = array(); //Fields that do not need to be displayed
- //Get all table names
- while($row = mysql_fetch_array ($table_result)){
- if(!in_array($row[0],$no_show_table)){
- $tables[]['TABLE_NAME'] = $row[0];
- }
- }
- //Replace all tables Table prefix
- if($_GET['prefix']){
- $prefix = 'czzj';
- foreach($tables as $key => $val){
- $tableName = $val['TABLE_NAME'];
- $string = explode('_',$tableName);
- if($string[0] != $prefix){
- $string[0] = $prefix;
- $newTableName = implode('_', $string );
- mysql_query('rename table '.$tableName.' TO '.$newTableName);
- }
- }
- echo "Replacement successful! ";exit();
- }
-
- //Loop to obtain the notes and column messages of all tables
- foreach ($tables as $k=>$v) {
- $sql = 'SELECT * FROM ';
- $ sql .= 'INFORMATION_SCHEMA.TABLES ';
- $sql .= 'WHERE ';
- $sql .= "table_name = '{$v['TABLE_NAME']}' AND table_schema = '{$database}'";
- $ table_result = mysql_query($sql, $mysql_conn);
- while ($t = mysql_fetch_array($table_result) ) {
- $tables[$k]['TABLE_COMMENT'] = $t['TABLE_COMMENT'];
- }
-
- $ sql = 'SELECT * FROM ';
- $sql .= 'INFORMATION_SCHEMA.COLUMNS ';
- $sql .= 'WHERE ';
- $sql .= "table_name = '{$v['TABLE_NAME']}' AND table_schema = '{$database}'";
-
- $fields = array();
- $field_result = mysql_query($sql, $mysql_conn);
- while ($t = mysql_fetch_array($field_result) ) {
- $fields[] = $ t;
- }
- $tables[$k]['COLUMN'] = $fields;
- }
- mysql_close($mysql_conn);
-
-
- $html = '';
- //Loop all tables
- foreach ($tables as $k=>$v) {
- $html .= '
' . ($k + 1) . ', ' . $v['TABLE_COMMENT'] .' ('. $v['TABLE_NAME' ]. ')'."n";
- $html .= '
'." n";
- $html .= ' '."n";
- $html .= '
'."n";
- $html .= '
Field name th>'."n";
- $html .= '
Data type | '."n";
- $html .= '
Default value | '. "n";
- $html .= '
Allow non-null | '."n";
- $html .= '
Auto-increment | '."n" ;
- $html .= '
Remarks | '."n";
- $html .= '
| '."n";
-
- foreach ($v['COLUMN' ] as $f) {
- if(!is_array($no_show_field[$v['TABLE_NAME']])){
- $no_show_field[$v['TABLE_NAME']] = array();
- }
- if(!in_array ($f['COLUMN_NAME'],$no_show_field[$v['TABLE_NAME']])){
- $html .= '
'."n";
- $html .= '
' . $f['COLUMN_NAME'] . ' | '."n";
- $html .= '
' . $f['COLUMN_TYPE '] . ' | '."n";
- $html .= '
' . $f['COLUMN_DEFAULT'] . ' | '." n";
- $html .= '
' . $f['IS_NULLABLE'] . ' | '."n";
- $html .= '
' . ($f['EXTRA']=='auto_increment'?'is':' ') . ' | '."n";
- $html .= '
' . $f['COLUMN_COMMENT'] . ' | '."n";
- $html .= '
'."n";
- }
- }
- $html .= '
'."n";
- $html .= '
'."n";
- }
- ?>
Copy code
- Tengsu Technology Co., Ltd. database data dictionary generation code< /title>
- body, td, th { font-family: "Microsoft Yahei"; font- size: 14px; }
- .warp{margin:auto; width:900px;}
- .warp h3{margin:0px; padding:0px; line-height:30px; margin-top:10px;}
- table { border-collapse : collapse; border: 1px solid #CCC; background: #efefef; }
- table th { text-align: left; font-weight: bold; height: 26px; line-height: 26px; font-size: 14px; text- align:center; border: 1px solid #CCC; padding:5px;}
- table td { height: 20px; font-size: 14px; border: 1px solid #CCC; background-color: #fff; padding:5px;}
- .c1 { width: 120px; }
- .c2 { width: 120px; }
- .c3 { width: 150px; }
- .c4 { width: 80px; text-align:center;}
- .c5 { width: 80px; text -align:center;}
- .c6 { width: 270px; }
-
-
Tengsu Technology Co., Ltd. database data dictionary generation code
- < ;/html>
Copy code
|
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31