# gda-field

## Name

gda-field -- Management of database fields

## Synopsis

    typedef     GdaFieldAttributes;
    typedef     GdaField;
    GdaFieldAttributes* gda_field_attributes_new
                                                (void);
    GdaFieldAttributes* gda_field_attributes_copy
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_free       (GdaFieldAttributes *fa);
    glong       gda_field_attributes_get_defined_size
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_defined_size
                                                (GdaFieldAttributes *fa,
                                                 glong size);
    const gchar* gda_field_attributes_get_name  (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_name   (GdaFieldAttributes *fa,
                                                 const gchar *name);
    const gchar* gda_field_attributes_get_table (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_table  (GdaFieldAttributes *fa,
                                                 const gchar *table);
    const gchar* gda_field_attributes_get_caption
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_caption
                                                (GdaFieldAttributes *fa,
                                                 const gchar *caption);
    glong       gda_field_attributes_get_scale  (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_scale  (GdaFieldAttributes *fa,
                                                 glong scale);
    GdaValueType gda_field_attributes_get_gdatype
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_gdatype
                                                (GdaFieldAttributes *fa,
                                                 GdaValueType type);
    gboolean    gda_field_attributes_get_allow_null
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_allow_null
                                                (GdaFieldAttributes *fa,
                                                 gboolean allow);
    gboolean    gda_field_attributes_get_primary_key
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_primary_key
                                                (GdaFieldAttributes *fa,
                                                 gboolean pk);
    gboolean    gda_field_attributes_get_unique_key
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_unique_key
                                                (GdaFieldAttributes *fa,
                                                 gboolean uk);
    const gchar* gda_field_attributes_get_references
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_references
                                                (GdaFieldAttributes *fa,
                                                 const gchar *ref);
    gboolean    gda_field_attributes_get_auto_increment
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_auto_increment
                                                (GdaFieldAttributes *fa,
                                                 gboolean is_auto);
    gint        gda_field_attributes_get_position
                                                (GdaFieldAttributes *fa);
    void        gda_field_attributes_set_position
                                                (GdaFieldAttributes *fa,
                                                 gint position);

## Description

## Details

### GdaFieldAttributes

    typedef struct {
    	gint defined_size;
    	gchar *name;
    	gchar *table;
    	gchar *caption;
    	gint scale;
    	GdaValueType gda_type;
    	gboolean allow_null;
    	gboolean primary_key;
    	gboolean unique_key;
    	gchar *references;
    	gboolean auto_increment;
    	glong auto_increment_start;
    	glong auto_increment_step;
    	gint position;
    } GdaFieldAttributes;

### GdaField

    typedef struct {
    	gint actual_size;
    	GdaValue *value;
    	GdaFieldAttributes *attributes;
    } GdaField;

### gda_field_attributes_new ()

    GdaFieldAttributes* gda_field_attributes_new
                                                (void);

Returns : |

### gda_field_attributes_copy ()

    GdaFieldAttributes* gda_field_attributes_copy
                                                (GdaFieldAttributes *fa);

`fa` : |
Returns : |

### gda_field_attributes_free ()

    void        gda_field_attributes_free       (GdaFieldAttributes *fa);

`fa` : |

### gda_field_attributes_get_defined_size ()

    glong       gda_field_attributes_get_defined_size
                                                (GdaFieldAttributes *fa);

`fa` : | a `GdaFieldAttributes`
Returns : | the defined size of `fa`.

### gda_field_attributes_set_defined_size ()

    void        gda_field_attributes_set_defined_size
                                                (GdaFieldAttributes *fa,
                                                 glong size);

Sets the defined size of a GdaFieldAttributes.

`fa` : | a GdaFieldAttributes.
`size` : | the defined size we want to set.

### gda_field_attributes_get_name ()

    const gchar* gda_field_attributes_get_name  (GdaFieldAttributes *fa);

`fa` : | a GdaFieldAttributes.
Returns : | the name of `fa`.

### gda_field_attributes_set_name ()

    void        gda_field_attributes_set_name   (GdaFieldAttributes *fa,
                                                 const gchar *name);

Sets the name of `fa` to `name`.

`fa` : | a GdaFieldAttributes.
`name` : | the new name of `fa`.

### gda_field_attributes_get_table ()

    const gchar* gda_field_attributes_get_table (GdaFieldAttributes *fa);

Get the table to which this field belongs.

`fa` : | a GdaFieldAttributes.
Returns : | the name of the table.

### gda_field_attributes_set_table ()

    void        gda_field_attributes_set_table  (GdaFieldAttributes *fa,
                                                 const gchar *table);

Set the name of the table to which the given field belongs.

`fa` : | a GdaFieldAttributes.
`table` : | table name.

### gda_field_attributes_get_caption ()

    const gchar* gda_field_attributes_get_caption
                                                (GdaFieldAttributes *fa);

`fa` : |
Returns : |

### gda_field_attributes_set_caption ()

    void        gda_field_attributes_set_caption
                                                (GdaFieldAttributes *fa,
                                                 const gchar *caption);

`fa` : |
`caption` : |

### gda_field_attributes_get_scale ()

    glong       gda_field_attributes_get_scale  (GdaFieldAttributes *fa);

`fa` : | a GdaFieldAttributes.
Returns : | the number of decimals of `fa`.

### gda_field_attributes_set_scale ()

    void        gda_field_attributes_set_scale  (GdaFieldAttributes *fa,
                                                 glong scale);

Sets the scale of `fa` to `scale`.

`fa` : | a GdaFieldAttributes.
`scale` : | number of decimals.

### gda_field_attributes_get_gdatype ()

    GdaValueType gda_field_attributes_get_gdatype
                                                (GdaFieldAttributes *fa);

`fa` : | a GdaFieldAttributes.
Returns : | the type of `fa`.

### gda_field_attributes_set_gdatype ()

    void        gda_field_attributes_set_gdatype
                                                (GdaFieldAttributes *fa,
                                                 GdaValueType type);

Sets the type of `fa` to `type`.

`fa` : | a GdaFieldAttributes.
`type` : | the new type of `fa`.

### gda_field_attributes_get_allow_null ()

    gboolean    gda_field_attributes_get_allow_null
                                                (GdaFieldAttributes *fa);

Get the 'allow null' flag of the given field attributes.

`fa` : | a GdaFieldAttributes.
Returns : | whether the given field allows null values or not.

### gda_field_attributes_set_allow_null ()

    void        gda_field_attributes_set_allow_null
                                                (GdaFieldAttributes *fa,
                                                 gboolean allow);

Sets the 'allow null' flag of the given field attributes.

`fa` : | a GdaFieldAttributes.
`allow` : |

### gda_field_attributes_get_primary_key ()

    gboolean    gda_field_attributes_get_primary_key
                                                (GdaFieldAttributes *fa);

`fa` : | a GdaFieldAttributes.
Returns : |

### gda_field_attributes_set_primary_key ()

    void        gda_field_attributes_set_primary_key
                                                (GdaFieldAttributes *fa,
                                                 gboolean pk);

`fa` : |
`pk` : |

### gda_field_attributes_get_unique_key ()

    gboolean    gda_field_attributes_get_unique_key
                                                (GdaFieldAttributes *fa);

`fa` : |
Returns : |

### gda_field_attributes_set_unique_key ()

    void        gda_field_attributes_set_unique_key
                                                (GdaFieldAttributes *fa,
                                                 gboolean uk);

`fa` : |
`uk` : |

### gda_field_attributes_get_references ()

    const gchar* gda_field_attributes_get_references
                                                (GdaFieldAttributes *fa);

`fa` : |
Returns : |

### gda_field_attributes_set_references ()

    void        gda_field_attributes_set_references
                                                (GdaFieldAttributes *fa,
                                                 const gchar *ref);

`fa` : |
`ref` : |

### gda_field_attributes_get_auto_increment ()

    gboolean    gda_field_attributes_get_auto_increment
                                                (GdaFieldAttributes *fa);

Get whether the given field is an auto incremented one.

`fa` : | a GdaFieldAttributes.
Returns : | TRUE or FALSE.

### gda_field_attributes_set_auto_increment ()

    void        gda_field_attributes_set_auto_increment
                                                (GdaFieldAttributes *fa,
                                                 gboolean is_auto);

Set the auto increment flag for the given field.

`fa` : | a GdaFieldAttributes.
`is_auto` : | auto increment status.

### gda_field_attributes_get_position ()

    gint        gda_field_attributes_get_position
                                                (GdaFieldAttributes *fa);

Get the position of the field the attributes refer to.

The position of this field in the containing data model.

`fa` : | a GdaFieldAttributes.
Returns : |

### gda_field_attributes_set_position ()

    void        gda_field_attributes_set_position
                                                (GdaFieldAttributes *fa,
                                                 gint position);

`fa` : |
`position` : |