summaryrefslogtreecommitdiffstats
path: root/user_guide_src/source/database/fields.rst
blob: b706ace7dd8347f74b2c5075454f03fd6142708c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
##########
Field Data
##########

$this->db->list_fields()
=========================

Returns an array containing the field names. This query can be called
two ways:

1. You can supply the table name and call it from the $this->db->
object::

	$fields = $this->db->list_fields('table_name');
	
	foreach ($fields as $field)
	{
		echo $field;
	}

2. You can gather the field names associated with any query you run by
calling the function from your query result object::

	$query = $this->db->query('SELECT * FROM some_table');
	
	foreach ($query->list_fields() as $field)
	{
		echo $field;
	}

$this->db->field_exists()
==========================

Sometimes it's helpful to know whether a particular field exists before
performing an action. Returns a boolean TRUE/FALSE. Usage example::

	if ($this->db->field_exists('field_name', 'table_name'))
	{
		// some code...
	}

.. note:: Replace *field_name* with the name of the column you are looking
	for, and replace *table_name* with the name of the table you are
	looking for.

$this->db->field_data()
========================

Returns an array of objects containing field information.

Sometimes it's helpful to gather the field names or other metadata, like
the column type, max length, etc.

.. note:: Not all databases provide meta-data.

Usage example::

	$fields = $this->db->field_data('table_name');
	
	foreach ($fields as $field)
	{
		echo $field->name;
		echo $field->type;
		echo $field->max_length;
		echo $field->primary_key;
	}

If you have run a query already you can use the result object instead of
supplying the table name::

	$query = $this->db->query("YOUR QUERY");
	$fields = $query->field_data();

The following data is available from this function if supported by your
database:

-  name - column name
-  max_length - maximum length of the column
-  primary_key - 1 if the column is a primary key
-  type - the type of the column