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 for NT 远程数据库
Oct 09 PHP
php4的session功能评述(三)
Oct 09 PHP
PHP生成静态页
Nov 25 PHP
php5中类的学习
Mar 28 PHP
Linux下实现PHP多进程的方法分享
Aug 16 PHP
PHP中数组合并的两种方法及区别介绍
Sep 14 PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 PHP
PHP 中提示undefined index如何解决(多种方法)
Mar 16 PHP
PHP常见数组函数用法小结
Mar 21 PHP
yii2.0实现pathinfo的形式访问的配置方法
Apr 06 PHP
PHP抓取及分析网页的方法详解
Apr 26 PHP
php中array_fill函数的实例用法
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录入页面中动态从数据库中提取数据的实现
2006/10/09 PHP
PHP 危险函数解释 分析
2009/04/22 PHP
php将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
ThinkPHP实现带验证码的文件上传功能实例
2014/11/01 PHP
php blowfish加密解密算法
2016/07/02 PHP
解析PHP之提取多维数组指定列的方法
2017/01/03 PHP
PHP用swoole+websocket和redis实现web一对一聊天
2019/11/05 PHP
JavaScript 异步调用框架 (Part 2 - 用例设计)
2009/08/03 Javascript
javascript写的一个链表实现代码
2009/10/25 Javascript
JavaScript CSS修改学习第一章 查找位置
2010/02/19 Javascript
用jquery设置按钮的disabled属性的实现代码
2010/11/28 Javascript
JS面向对象编程浅析
2011/08/28 Javascript
javascript正则表达式使用replace()替换手机号的方法
2015/01/19 Javascript
js控制网页背景音乐播放与停止的方法
2015/02/06 Javascript
jQuery+PHP+MySQL实现无限级联下拉框效果
2016/02/19 Javascript
JS实现的自动打字效果示例
2017/03/10 Javascript
整理关于Bootstrap导航的慕课笔记
2017/03/29 Javascript
vue+iview+less 实现换肤功能
2018/08/17 Javascript
详解如何用webpack4从零开始构建react开发环境
2019/01/27 Javascript
微信小程序实现渐入渐出动画效果
2019/06/13 Javascript
原生JS实现贪吃蛇小游戏
2020/03/09 Javascript
[05:17]DOTA2睡衣妹卖萌求签名 CJ第二天全明星影像
2013/07/28 DOTA
[01:19]2014DOTA2国际邀请赛 采访TITAN战队ohaiyo 能赢DK很幸运
2014/07/12 DOTA
python 算法 排序实现快速排序
2012/06/05 Python
python中的实例方法、静态方法、类方法、类变量和实例变量浅析
2014/04/26 Python
Python iter()函数用法实例分析
2018/03/17 Python
Python中如何将一个类方法变为多个方法
2019/12/30 Python
美国男士内衣品牌:Tommy John
2017/12/22 全球购物
英国领先的电动可调床制造商:Laybrook
2019/12/26 全球购物
党校培训思想汇报
2013/12/30 职场文书
2014年巴西世界杯口号
2014/06/05 职场文书
购房委托书
2014/10/15 职场文书
售票员岗位职责
2015/02/15 职场文书
初三毕业感言
2015/07/31 职场文书
JS实现数组去重的11种方法总结
2022/04/04 Javascript
《废话连篇——致新手》——chinapizza
2022/04/05 无线电