首先我们需要了解下查询MySQL数据库/表相关信息的SQL语句:
由上述SQL语句可以看到,我们可以使用SHOW FULL COLUMNS来列出字段及详情信息,示例代码:
打印结果:
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
我是这样做的测试:
create table music(
id varchar(10),
title varchar(100),
name varchar(10)
);
insert into music values('2','离别','12354');
insert into music values('15','朋友','5454');
insert into music values('161','送别','4668');
$conn=mysql_connect("localhost:3307","数据库用户名","数据库密码");
mysql_select_db("date");
$result=mysql_query("select max(id+0) max_id from music",$conn);
$field=mysql_fetch_row($result);
print_r($field);
?>
结果:Array ( [0] => 161 )
因为mysql中varchar不能用max()所以通过id+0来转换id类型从而解决这个问题 ,如果你建表时id是整数型的就可以直接用max()了。详细解释见:hb.qq.com/a/20110624/000061.htm。
mysql_query执行sql语句,show tables这些