(7) 数据库信息函数(2个): 1、mysql_fetch_field() 格式:object mysql_fetch_field(int query , int [field_offset]); 返回1个对象,即一哈希表,下标有: table : 表名 name : 字段名 max_length : 该字段的最大长度 not_null : 字段为not null则返回1,否则返回0 primary_key : 字段为primary key则返回1,否则返回0 unique_key : 字段为unique key则返回1,否则返回0 multiple_key : 字段为非unique key则返回1,否则返回0 numeric : 字段为numeric则返回1,否则返回0 blob : 字段为blob则返回1,否则返回0 type : 字段的类型 unsigned : 字段为unsigned则返回1,否则返回0 zerofill : 字段为zero filled则返回1,否则返回0 引用格式为:对象名->下标名 使用此函数可以得到表名、字段名、类型....... 例子: <?php $query = mysql_query($sql , $connect); while($object = mysql_fetch_field($query)) { echo "table name : ".$object->table."<br>"; echo "field name : ".$object->name."<br>"; echo "primary key : ".$object->primary_key."<br>"; echo "not null : ".$object->not_null."<br>"; echo "field type : ".$object->type."<br>"; echo "field max length : ".$object->max_length."<br>"; } ?> Note : 哈希表的是从0坐标开始的,即第一个字段为哈希表中的0项。 如果我们想直接得到哈希表的第三项即第三个字段的信息,可用如下格式: <?php $query = mysql_query($sql , $connect); $object = mysql_fetch_field($query , 2); echo "table name : ".$object->table."<br>"; echo "field name : ".$object->name."<br>"; echo "primary key : ".$object->primary_key."<br>"; echo "not null : ".$object->not_null."<br>"; echo "field type : ".$object->type."<br>"; echo "field max length : ".$object->max_length."<br>"; ?> 其实这也可以通过下面这个函数来达到同样的目的。 2、mysql_field_seek() 格式:int mysql_field_seek(int $query , int field_offset); 将游标移到指定的字段上。 例子: <?php $query = mysql_query($sql , $connect); $seek = mysql_field_seek($query , 2); $object = mysql_fetch_field($query); echo "table name : ".$object->table."<br>"; echo "field name : ".$object->name."<br>"; echo "primary key : ".$object->primary_key."<br>"; echo "not null : ".$object->not_null."<br>"; echo "field type : ".$object->type."<br>"; echo "field max length : ".$object->max_length."<br>"; ?> 这样也达到与上例同样的要求。 |