php mysql获取表字段名称和字段信息的三种方法
更新时间:2016年11月13日 17:09:51 投稿:lqh
本文章向大家介绍php获取mysql表字段名称和字段信息的三种方法,分别为:mysql_fetch_field方法、desc方法和SHOW FULL FIELDS方法,
php mysql获取表字段名称和字段信息的三种方法
先给出本实例中使用的表的信息:

使用desc获取表字段信息
php代码如下:
<?php
mysql_connect("localhost","root","");
mysql_select_db("test");
$query = "desc student";
$result = mysql_query($query);
while($row=mysql_fetch_assoc($result)){
print_r($row);
}
?>
运行结果:
Array ( [Field] => student_id [Type] => int(4) [Null] => NO [Key] => PRI [Default] => [Extra] => auto_increment ) Array ( [Field] => student_name [Type] => varchar(50) [Null] => NO [Key] => [Default] => [Extra] => ) Array ( [Field] => class_id [Type] => int(4) [Null] => NO [Key] => [Default] => [Extra] => ) Array ( [Field] => total_score [Type] => int(4) [Null] => NO [Key] => [Default] => [Extra] => )
使用SHOW FULL FIELDS获取表字段信息
php代码如下:
<?php
mysql_connect("localhost","root","");
mysql_select_db("test");
$query = "SHOW FULL COLUMNS FROM student";
$result = mysql_query($query);
while($row=mysql_fetch_assoc($result)){
print_r($row);
}
?>
运行结果:
Array ( [Field] => student_id [Type] => int(4) [Collation] => [Null] => NO [Key] => PRI [Default] => [Extra] => auto_increment [Privileges] => select,insert,update,references [Comment] => ) Array ( [Field] => student_name [Type] => varchar(50) [Collation] => latin1_swedish_ci [Null] => NO [Key] => [Default] => [Extra] => [Privileges] => select,insert,update,references [Comment] => ) Array ( [Field] => class_id [Type] => int(4) [Collation] => [Null] => NO [Key] => [Default] => [Extra] => [Privileges] => select,insert,update,references [Comment] => ) Array ( [Field] => total_score [Type] => int(4) [Collation] => [Null] => NO [Key] => [Default] => [Extra] => [Privileges] => select,insert,update,references [Comment] => )
使用mysql_fetch_field方法获取表字段信息
php代码如下:
<?php
mysql_connect("localhost","root","");
mysql_select_db("test");
$query = "SELECT * FROM student LIMIT 1";
$result = mysql_query($query);
$fields = mysql_num_fields($result);
for($count=0;$count<$fields;$count++)
{
$field = mysql_fetch_field($result,$count);
print_r($field);
}
?>
运行结果如下:
stdClass Object ( [name] => student_id [table] => student [def] => [max_length] => 1 [not_null] => 1 [primary_key] => 1 [multiple_key] => 0 [unique_key] => 0 [numeric] => 1 [blob] => 0 [type] => int [unsigned] => 0 [zerofill] => 0 ) stdClass Object ( [name] => student_name [table] => student [def] => [max_length] => 5 [not_null] => 1 [primary_key] => 0 [multiple_key] => 0 [unique_key] => 0 [numeric] => 0 [blob] => 0 [type] => string [unsigned] => 0 [zerofill] => 0 ) stdClass Object ( [name] => class_id [table] => student [def] => [max_length] => 1 [not_null] => 1 [primary_key] => 0 [multiple_key] => 0 [unique_key] => 0 [numeric] => 1 [blob] => 0 [type] => int [unsigned] => 0 [zerofill] => 0 ) stdClass Object ( [name] => total_score [table] => student [def] => [max_length] => 3 [not_null] => 1 [primary_key] => 0 [multiple_key] => 0 [unique_key] => 0 [numeric] => 1 [blob] => 0 [type] => int [unsigned] => 0 [zerofill] => 0 )
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
Laravel的下载以及使用composer来安装debugbar扩展包图文教程
这篇文章主要介绍了Laravel的下载以及使用composer来安装debugbar扩展包图文教程,图文讲解的比较清晰,有不太会的同学可以研究下2021-01-01
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
ThinkPHP的官方文档没有给出ThinkAjax的使用方法,令很多初学者使用起来有些不便,今天学到这里,也碰到了很多问题,花时间深究下,做个学习笔记,希望能对初学者有帮助2011-12-12
JoshChen_web格式编码UTF8-无BOM的小细节分析
下面这张图是用chrome浏览器打开一个2012年-2013学年第二学期的PHP课程的期末作业,用的是PHP + smarty + mysql来实现的2013-08-08


最新评论