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 论坛采集程序 模拟登陆,抓取页面 实现代码
Jul 09 PHP
php中记录用户访问过的产品,在cookie记录产品id,id取得产品信息
May 04 PHP
Notice: Trying to get property of non-object problem(PHP)解决办法
Mar 11 PHP
用PHP编写和读取XML的几种方式
Jan 12 PHP
php使用base64加密解密图片示例分享
Jan 20 PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 PHP
Codeigniter控制器controller继承问题实例分析
Jan 19 PHP
PHP实现带重试功能的curl连接示例
Jul 28 PHP
php+mysql实现简单登录注册修改密码网页
Nov 30 PHP
简单实现php上传文件功能
Sep 21 PHP
thinkphp5框架前后端分离项目实现分页功能的方法分析
Oct 08 PHP
PHP 加密 Password Hashing API基础知识点
Mar 02 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
PHP的preg_match匹配字符串长度问题解决方法
2014/05/03 PHP
PHP 数组基本操作方法详解
2016/06/17 PHP
php json相关函数用法示例
2017/03/28 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
javascript中的继承实例代码
2011/04/27 Javascript
js取值中form.all和不加all的区别介绍
2014/01/20 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
原生js代码实现图片放大境效果
2016/10/30 Javascript
JS判断输入的字符串是否是数字的方法(正则表达式)
2016/11/29 Javascript
html5+CSS 实现禁止IOS长按复制粘贴功能
2016/12/28 Javascript
socket.io学习教程之基础介绍(一)
2017/04/29 Javascript
js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)
2017/12/28 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
2018/01/31 Javascript
vue组件实现进度条效果
2018/06/06 Javascript
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
[01:10]DOTA2 Supermajor:英雄,由我们见证
2018/05/14 DOTA
python二叉树的实现实例
2013/11/21 Python
利用Python命令行传递实例化对象的方法
2016/11/02 Python
详解Python list 与 NumPy.ndarry 切片之间的对比
2017/07/24 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
2018/04/23 Python
python 读取txt中每行数据,并且保存到excel中的实例
2018/04/29 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
简单了解python列表和元组的区别
2020/05/14 Python
python 6种方法实现单例模式
2020/12/15 Python
CSS3中动画属性transform、transition和animation属性的区别
2016/09/25 HTML / CSS
CSS3中媒体查询结合rem布局适配手机屏幕
2019/06/10 HTML / CSS
html5读取本地文件示例代码
2014/04/22 HTML / CSS
塔吉特百货公司官网:Target
2017/04/27 全球购物
创联软件面试题笔试题
2012/10/07 面试题
奥巴马的演讲稿
2014/05/15 职场文书
教师求职信范文
2014/05/24 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
学校学期工作总结
2015/08/13 职场文书
我的中国梦心得体会范文
2016/01/05 职场文书
《和时间赛跑》读后感3篇
2019/12/16 职场文书