Dave Rolsky > Alzabo-0.92 > Alzabo::Create::Column

Download:
Alzabo-0.92.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  4
Open  1
View/Report Bugs
Module Version: 2   Source  

NAME ^

Alzabo::Create::Column - Column objects for use in schema creation

SYNOPSIS ^

  use Alzabo::Create::Column;

DESCRIPTION ^

This object represents a column. It holds data specific to a column. Additional data is held in a Alzabo::Create::ColumnDefinition object, which is used to allow two columns to share a type (which is good when two columns in different tables are related as it means that if the type of one is changed, the other is also.)

INHERITS FROM ^

Alzabo::Column

METHODS ^

new

The constructor accepts the following parameters:

It returns a new Alzabo::Create::Column object.

Throws: Alzabo::Exception::Params

alter

This method allows you to change a column's type, length, and precision as a single operation. It should be instead of calling set_type() followed by set_length().

It takes the following parameters:

Throws: Alzabo::Exception::Params, Alzabo::Exception::RDBMSRules

set_type ($type)

Sets the column's type.

Throws: Alzabo::Exception::Params, Alzabo::Exception::RDBMSRules

set_table (Alzabo::Create::Table object)

Sets the Alzabo::Create::Table object in which this column is located.

Throws: Alzabo::Exception::Params

set_name ($name)

Sets the column's name (a string).

Throws: Alzabo::Exception::Params, Alzabo::Exception::RDBMSRules

set_nullable (0 or 1)

Sets the nullability of the column (this determines whether nulls are allowed in the column or not). Must be 0 or 1.

Throws: Alzabo::Exception::Params

set_attributes (@attributes)

Sets the column's attributes. These are strings describing the column (for example, valid attributes in MySQL are "PRIMARY KEY" or "AUTO_INCREMENT").

Throws: Alzabo::Exception::RDBMSRules

add_attribute ($attribute)

Add an attribute to the column's list of attributes.

Throws: Alzabo::Exception::RDBMSRules

delete_attribute ($attribute)

Delete the given attribute from the column's list of attributes.

Throws: Throws: Alzabo::Exception::Params, Alzabo::Exception::RDBMSRules

set_default ($default)

Sets the column's default value.

set_length

This method takes the following parameters:

This method sets the column's length and precision. The precision parameter is optional (though some column types may require it if the length is set).

Throws: Alzabo::Exception::RDBMSRules

set_sequenced (0 or 1)

Sets the value of the column's sequenced attribute.

Throws: Alzabo::Exception::Params, Alzabo::Exception::RDBMSRules

set_definition (Alzabo::Create::ColumnDefinition object)

Sets the Alzabo::Create::ColumnDefinition object which holds this column's type information.

former_name

If the column's name has been changed since the last time the schema was instantiated, this method returns the column's previous name.

set_comment ($comment)

Set the comment for the column object.

syntax highlighting: