Pike v8.0 release 1738

Method Mysql.mysql()->list_fields()


Method list_fields

array(int|mapping(string:mixed)) list_fields(string table)
array(int|mapping(string:mixed)) list_fields(string table, string wild)

Description

List all fields.

Returns an array of mappings with information about the fields in the table named table. If the argument wild is given, only those fields matching it will be returned

The mappings contain the following entries:

"name" : string

The name of the field.

"table" : string

The name of the table.

"default" : string

The default value for the field.

"type" : string

The SQL type of the field.

"length" : int

The length of the longest possible value that can be stored in the field. Note that this measures the display length in string form.

"flags" : multiset(string)

Some flags.

decimals : int

The number of decimalplaces.

The type of the field can be any of: "decimal", "char", "short", "long", "float", "double", "null", "time", "longlong", "int24", "tiny blob", "medium blob", "long blob", "var string", "string" or "unknown".

The flags multiset can contain any of:

"primary_key"

This field is part of the primary key for this table.

"unique"

This field is part of a unique key for this table.

"multiple_key"

This field is part of a nonunique key for this table.

"not_null"

This field cannot be NULL.

"blob"

This field is a BLOB or TEXT.

"auto_increment"

This field has the AUTO_INCREMENT attribute.

"zerofill"

This Field has the ZEROFILL attribute.

"binary"

This Field has the BINARY attribute.

"enum"

This Field is an ENUM.

"set"

This Field is a SET.

"unsigned"

This Field has the UNSIGNED attribute.

"numeric"

This Field is numeric.

Note

Michael Widenius recomends use of the following query instead: show fields in 'table' like "wild".

See also

list_dbs(), list_tables(), list_processes(), Mysql.mysql_result.fetch_field()