PHP获取mysql数据表的字段名称和详细信息的方法


Posted in PHP onSeptember 27, 2014

首先我们需要了解下查询MySQL数据库/表相关信息的SQL语句:

SHOW DATABASES                                //列出 MySQL Server 数据库。

SHOW TABLES [FROM db_name]                    //列出数据库数据表。

SHOW CREATE TABLES tbl_name                    //导出数据表结构。

SHOW TABLE STATUS [FROM db_name]              //列出数据表及表状态信息。

SHOW COLUMNS FROM tbl_name [FROM db_name]     //列出资料表字段

SHOW FIELDS FROM tbl_name [FROM db_name],DESCRIBE tbl_name [col_name]。

SHOW FULL COLUMNS FROM tbl_name [FROM db_name]//列出字段及详情

SHOW FULL FIELDS FROM tbl_name [FROM db_name] //列出字段完整属性

SHOW INDEX FROM tbl_name [FROM db_name]       //列出表索引。

SHOW STATUS                                  //列出 DB Server 状态。

SHOW VARIABLES                               //列出 MySQL 系统环境变量。

SHOW PROCESSLIST                             //列出执行命令。

SHOW GRANTS FOR user                         //列出某用户权限

由上述SQL语句可以看到,我们可以使用SHOW FULL COLUMNS来列出字段及详情信息,示例代码:

$rescolumns = mysql_query("SHOW FULL COLUMNS FROM ".TB_NAME."") ;

while($row = mysql_fetch_array($rescolumns)){

//  echo '字段名称:'.$row['Field'].'-数据类型:'.$row['Type'].'-注释:'.$row['Comment'];

//  echo '<br/><br/>';

  print_r($row);

}

打印结果:

Array ( [0] => id [Field] => id [1] => char(2) [Type] => char(2) [2] => utf8_general_ci [Collation] => utf8_general_ci [3] => NO [Null] => NO [4] => PRI [Key] => PRI [5] => [Default] => [6] => [Extra] => [7] => select,insert,update,references [Privileges] => select,insert,update,references [8] => [Comment] => )
Array ( [0] => title [Field] => title [1] => char(50) [Type] => char(50) [2] => utf8_general_ci [Collation] => utf8_general_ci [3] => YES [Null] => YES [4] => [Key] => [5] => [Default] => [6] => [Extra] => [7] => select,insert,update,references [Privileges] => select,insert,update,references [8] => 建议存储:标题、姓名等信息 [Comment] => 建议存储:标题、姓名等信息 )
Array ( [0] => des [Field] => des [1] => varchar(255) [Type] => varchar(255) [2] => utf8_general_ci [Collation] => utf8_general_ci [3] => YES [Null] => YES [4] => [Key] => [5] => [Default] => [6] => [Extra] => [7] => select,insert,update,references [Privileges] => select,insert,update,references [8] => [Comment] => )
…………

补充说明信息:

当然你也可以通过mysql_list_fields — 列出 MySQL 结果中的字段。mysql_list_fields() 取得给定表名的信息,参数是数据库名和表名,返回一个结果指针。

但是,mysql_list_fields() 函数已过时。最好用 mysql_query() 来发出一条 SHOW COLUMNS FROM table [LIKE 'name'] 的 SQL 语句来代替。详细可参考PHP帮助文档:PHP: mysql_list_fields - Manua

PHP 相关文章推荐
如何在PHP中使用Oracle数据库(6)
Oct 09 PHP
php+mysql实现无限级分类 | 树型显示分类关系
Nov 19 PHP
php中session_unset与session_destroy的区别分析
Jun 16 PHP
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
Apr 29 PHP
php 伪静态之IIS篇
Jun 02 PHP
PHP使用mysql_fetch_object从查询结果中获取对象集的方法
Mar 18 PHP
php二维码生成
Oct 19 PHP
详解WordPress开发中wp_title()函数的用法
Jan 07 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
Jun 09 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
Nov 13 PHP
关于ThinkPHP中的异常处理详解
May 11 PHP
详解PHP PDO简单教程
May 28 PHP
PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享
Sep 27 #PHP
PHP会话控制:Session与Cookie详解
Sep 27 #PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
Sep 24 #PHP
php实现获取及设置用户访问页面语言类
Sep 24 #PHP
php实现的zip文件内容比较类
Sep 24 #PHP
php导出CSV抽象类实例
Sep 24 #PHP
php实现的双向队列类实例
Sep 24 #PHP
You might like
ZF等常用php框架中存在的问题
2008/01/10 PHP
ThinkPHP模型详解
2015/07/27 PHP
php安装扩展mysqli的实现步骤及报错解决办法
2017/09/23 PHP
Laravel关联模型中过滤结果为空的结果集(has和with区别)
2018/10/18 PHP
使用git迁移Laravel项目至新开发环境的步骤详解
2020/04/06 PHP
ExtJS GTGrid 简单用户管理
2009/07/01 Javascript
替代window.event.srcElement效果的可兼容性的函数
2009/12/18 Javascript
jquery dialog键盘事件代码
2010/08/01 Javascript
在ASP.NET中使用JavaScript脚本的方法
2013/11/12 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
jq实现左滑显示删除按钮,点击删除实现删除数据功能(推荐)
2016/08/23 Javascript
BootStrap中
2016/12/10 Javascript
使用ng-packagr打包Angular的方法示例
2018/09/21 Javascript
vue实现列表拖拽排序的功能
2020/11/02 Javascript
vue.js watch经常失效的场景与解决方案
2021/01/07 Vue.js
[03:42]2014DOTA2国际邀请赛 第三日比赛排位扑朔迷离
2014/07/12 DOTA
用Python编写一个简单的Lisp解释器的教程
2015/04/03 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
2017/05/24 Python
使用Python函数进行模块化的实现
2019/11/15 Python
如何通过Django使用本地css/js文件
2020/01/20 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
python numpy实现多次循环读取文件 等间隔过滤数据示例
2020/03/14 Python
Python操作Word批量生成合同的实现示例
2020/08/28 Python
纯CSS3+DIV实现小三角形边框效果的示例代码
2020/08/03 HTML / CSS
波兰补充商店:Muscle Power
2018/10/29 全球购物
Feelunique中文官网:欧洲最大化妆品零售电商
2020/07/10 全球购物
意大利在线药房:Saninforma
2021/02/11 全球购物
枚举与#define宏的区别
2014/04/30 面试题
事业单位个人应聘自荐信
2013/09/21 职场文书
写自荐信三大法宝
2014/01/24 职场文书
挂职自我鉴定
2014/02/26 职场文书
2014年机关植树节活动方案
2014/02/27 职场文书
会计求职信
2014/05/29 职场文书
学生违纪检讨书200字
2014/10/21 职场文书
财务工作个人总结
2015/02/27 职场文书
被告代理词范文
2015/05/25 职场文书