PHPackages                             donatj/mysql-schema - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. donatj/mysql-schema

ActiveLibrary[Database &amp; ORM](/categories/database)

donatj/mysql-schema
===================

Object Hierarchy Representing MySQL Schema

v0.4.0(3mo ago)02491MITPHPPHP &gt;=5.4.0

Since Sep 29Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/donatj/php-mysqlschema)[ Packagist](https://packagist.org/packages/donatj/mysql-schema)[ Fund](https://www.paypal.me/donatj/15)[ GitHub Sponsors](https://github.com/donatj)[ RSS](/packages/donatj-mysql-schema/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (6)Used By (0)

Simple PHP MySQL Schema Model
=============================

[](#simple-php-mysql-schema-model)

[![Latest Stable Version](https://camo.githubusercontent.com/bbca14c2dfc471e4122e4b2afb3189276eb24cb52e0dbdb63184da642d66ca03/68747470733a2f2f706f7365722e707567782e6f72672f646f6e61746a2f6d7973716c2d736368656d612f76657273696f6e)](https://packagist.org/packages/donatj/mysql-schema)[![License](https://camo.githubusercontent.com/0b1d914d41a2a96521c1123d72789881ed2e4c7c22dc221a99fa472b71d6960a/68747470733a2f2f706f7365722e707567782e6f72672f646f6e61746a2f6d7973716c2d736368656d612f6c6963656e7365)](https://packagist.org/packages/donatj/mysql-schema)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/ff854d89d21e0d411d5a0e804d0ffbaf1bea0152154c6cee20781a4844c4f8dc/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f646f6e61746a2f5068704d7953716c536368656d612f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/donatj/PhpMySqlSchema)

Simple PHP MySQL Schema Model

Requirements
------------

[](#requirements)

- **php**: &gt;=5.4.0

Installing
----------

[](#installing)

Install the latest version with:

```
composer require 'donatj/mysql-schema'
```

Documentation
-------------

[](#documentation)

### Class: \\donatj\\MySqlSchema\\Columns\\AbstractColumn

[](#class-donatjmysqlschemacolumnsabstractcolumn)

#### Method: AbstractColumn-&gt;\_\_construct

[](#method-abstractcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters)

- ***string*** `$name`

---

#### Method: AbstractColumn-&gt;getTables

[](#method-abstractcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractColumn-&gt;getComment

[](#method-abstractcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-1)

- ***string***

---

#### Method: AbstractColumn-&gt;setComment

[](#method-abstractcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-1)

- ***string*** `$comment`

##### Returns:

[](#returns-2)

- ***void***

---

#### Method: AbstractColumn-&gt;isNullable

[](#method-abstractcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-3)

- ***bool***

---

#### Method: AbstractColumn-&gt;setNullable

[](#method-abstractcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-2)

- ***bool*** `$nullable`

##### Returns:

[](#returns-4)

- ***void***

---

#### Method: AbstractColumn-&gt;getName

[](#method-abstractcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-5)

- ***string***

---

#### Method: AbstractColumn-&gt;setName

[](#method-abstractcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-3)

- ***string*** `$name`

##### Returns:

[](#returns-6)

- ***void***

---

#### Method: AbstractColumn-&gt;toString

[](#method-abstractcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-4)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-7)

- ***string***

---

#### Method: AbstractColumn-&gt;getTypeName

[](#method-abstractcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-8)

- ***string***

---

#### Method: AbstractColumn-&gt;getDefault

[](#method-abstractcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-9)

- ***mixed***

---

#### Method: AbstractColumn-&gt;setDefault

[](#method-abstractcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-5)

- ***mixed*** `$default`

##### Returns:

[](#returns-10)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\CharsetColumnInterface

[](#class-donatjmysqlschemacolumnsinterfacescharsetcolumninterface)

#### Method: CharsetColumnInterface-&gt;getCharset

[](#method-charsetcolumninterface-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-11)

- ***null*** | ***string***

---

#### Method: CharsetColumnInterface-&gt;setCharset

[](#method-charsetcolumninterface-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-6)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-12)

- ***void***

---

#### Method: CharsetColumnInterface-&gt;getCollation

[](#method-charsetcolumninterface-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-13)

- ***null*** | ***string***

---

#### Method: CharsetColumnInterface-&gt;setCollation

[](#method-charsetcolumninterface-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-7)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-14)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\DecimalPlacesInterface

[](#class-donatjmysqlschemacolumnsinterfacesdecimalplacesinterface)

#### Method: DecimalPlacesInterface-&gt;getDecimalPlaces

[](#method-decimalplacesinterface-getdecimalplaces)

```
function getDecimalPlaces()
```

##### Returns:

[](#returns-15)

- ***int***

---

#### Method: DecimalPlacesInterface-&gt;setDecimalPlaces

[](#method-decimalplacesinterface-setdecimalplaces)

```
function setDecimalPlaces($decimalPlaces)
```

##### Parameters:

[](#parameters-8)

- ***int*** `$decimalPlaces`

##### Returns:

[](#returns-16)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\MaxDigitsInterface

[](#class-donatjmysqlschemacolumnsinterfacesmaxdigitsinterface)

#### Method: MaxDigitsInterface-&gt;getMaxDigits

[](#method-maxdigitsinterface-getmaxdigits)

```
function getMaxDigits()
```

##### Returns:

[](#returns-17)

- ***int***

---

#### Method: MaxDigitsInterface-&gt;setMaxDigits

[](#method-maxdigitsinterface-setmaxdigits)

```
function setMaxDigits($maxDigits)
```

##### Parameters:

[](#parameters-9)

- ***int*** `$maxDigits`

##### Returns:

[](#returns-18)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\OptionalLengthInterface

[](#class-donatjmysqlschemacolumnsinterfacesoptionallengthinterface)

#### Method: OptionalLengthInterface-&gt;getLength

[](#method-optionallengthinterface-getlength)

```
function getLength()
```

##### Returns:

[](#returns-19)

- ***int*** | ***null***

---

#### Method: OptionalLengthInterface-&gt;setLength

[](#method-optionallengthinterface-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-10)

- ***int*** | ***null*** `$length`

##### Returns:

[](#returns-20)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\PrecisionInterface

[](#class-donatjmysqlschemacolumnsinterfacesprecisioninterface)

#### Method: PrecisionInterface-&gt;getPrecision

[](#method-precisioninterface-getprecision)

```
function getPrecision()
```

##### Returns:

[](#returns-21)

- ***int***

---

#### Method: PrecisionInterface-&gt;setPrecision

[](#method-precisioninterface-setprecision)

```
function setPrecision($precision)
```

##### Parameters:

[](#parameters-11)

- ***int*** `$precision`

##### Returns:

[](#returns-22)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\RequiredLengthInterface

[](#class-donatjmysqlschemacolumnsinterfacesrequiredlengthinterface)

#### Method: RequiredLengthInterface-&gt;getLength

[](#method-requiredlengthinterface-getlength)

```
function getLength()
```

##### Returns:

[](#returns-23)

- ***int***

---

#### Method: RequiredLengthInterface-&gt;setLength

[](#method-requiredlengthinterface-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-12)

- ***int*** `$length`

##### Returns:

[](#returns-24)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Interfaces\\SignedInterface

[](#class-donatjmysqlschemacolumnsinterfacessignedinterface)

#### Method: SignedInterface-&gt;isSigned

[](#method-signedinterface-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-25)

- ***bool***

---

#### Method: SignedInterface-&gt;setSigned

[](#method-signedinterface-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-13)

- ***bool*** `$signed`

##### Returns:

[](#returns-26)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Json\\JsonColumn

[](#class-donatjmysqlschemacolumnsjsonjsoncolumn)

#### Method: JsonColumn-&gt;getTypeName

[](#method-jsoncolumn-gettypename)

```
function getTypeName() : string
```

##### Returns:

[](#returns-27)

- ***string***

---

#### Method: JsonColumn-&gt;\_\_construct

[](#method-jsoncolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-14)

- ***string*** `$name`

---

#### Method: JsonColumn-&gt;getTables

[](#method-jsoncolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-28)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: JsonColumn-&gt;getComment

[](#method-jsoncolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-29)

- ***string***

---

#### Method: JsonColumn-&gt;setComment

[](#method-jsoncolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-15)

- ***string*** `$comment`

##### Returns:

[](#returns-30)

- ***void***

---

#### Method: JsonColumn-&gt;isNullable

[](#method-jsoncolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-31)

- ***bool***

---

#### Method: JsonColumn-&gt;setNullable

[](#method-jsoncolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-16)

- ***bool*** `$nullable`

##### Returns:

[](#returns-32)

- ***void***

---

#### Method: JsonColumn-&gt;getName

[](#method-jsoncolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-33)

- ***string***

---

#### Method: JsonColumn-&gt;setName

[](#method-jsoncolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-17)

- ***string*** `$name`

##### Returns:

[](#returns-34)

- ***void***

---

#### Method: JsonColumn-&gt;toString

[](#method-jsoncolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-18)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-35)

- ***string***

---

#### Method: JsonColumn-&gt;getDefault

[](#method-jsoncolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-36)

- ***mixed***

---

#### Method: JsonColumn-&gt;setDefault

[](#method-jsoncolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-19)

- ***mixed*** `$default`

##### Returns:

[](#returns-37)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\AbstractFloatingColumn

[](#class-donatjmysqlschemacolumnsnumericabstractfloatingcolumn)

#### Method: AbstractFloatingColumn-&gt;\_\_construct

[](#method-abstractfloatingcolumn-__construct)

```
function __construct($name, $precision)
```

##### Parameters:

[](#parameters-20)

- ***string*** `$name`
- ***int*** `$precision`

---

#### Method: AbstractFloatingColumn-&gt;getPrecision

[](#method-abstractfloatingcolumn-getprecision)

```
function getPrecision()
```

##### Returns:

[](#returns-38)

- ***int***

---

#### Method: AbstractFloatingColumn-&gt;setPrecision

[](#method-abstractfloatingcolumn-setprecision)

```
function setPrecision($precision)
```

##### Parameters:

[](#parameters-21)

- ***int*** `$precision`

##### Returns:

[](#returns-39)

- ***void***

---

#### Method: AbstractFloatingColumn-&gt;getTables

[](#method-abstractfloatingcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-40)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractFloatingColumn-&gt;getComment

[](#method-abstractfloatingcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-41)

- ***string***

---

#### Method: AbstractFloatingColumn-&gt;setComment

[](#method-abstractfloatingcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-22)

- ***string*** `$comment`

##### Returns:

[](#returns-42)

- ***void***

---

#### Method: AbstractFloatingColumn-&gt;isNullable

[](#method-abstractfloatingcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-43)

- ***bool***

---

#### Method: AbstractFloatingColumn-&gt;setNullable

[](#method-abstractfloatingcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-23)

- ***bool*** `$nullable`

##### Returns:

[](#returns-44)

- ***void***

---

#### Method: AbstractFloatingColumn-&gt;getName

[](#method-abstractfloatingcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-45)

- ***string***

---

#### Method: AbstractFloatingColumn-&gt;setName

[](#method-abstractfloatingcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-24)

- ***string*** `$name`

##### Returns:

[](#returns-46)

- ***void***

---

#### Method: AbstractFloatingColumn-&gt;toString

[](#method-abstractfloatingcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-25)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-47)

- ***string***

---

#### Method: AbstractFloatingColumn-&gt;getTypeName

[](#method-abstractfloatingcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-48)

- ***string***

---

#### Method: AbstractFloatingColumn-&gt;getDefault

[](#method-abstractfloatingcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-49)

- ***mixed***

---

#### Method: AbstractFloatingColumn-&gt;setDefault

[](#method-abstractfloatingcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-26)

- ***mixed*** `$default`

##### Returns:

[](#returns-50)

- ***void***

---

#### Method: AbstractFloatingColumn-&gt;isSigned

[](#method-abstractfloatingcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-51)

- ***bool***

---

#### Method: AbstractFloatingColumn-&gt;setSigned

[](#method-abstractfloatingcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-27)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\AbstractIntegerColumn

[](#class-donatjmysqlschemacolumnsnumericabstractintegercolumn)

#### Method: AbstractIntegerColumn-&gt;\_\_construct

[](#method-abstractintegercolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-28)

- ***string*** `$name`

---

#### Method: AbstractIntegerColumn-&gt;getTables

[](#method-abstractintegercolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-52)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractIntegerColumn-&gt;getComment

[](#method-abstractintegercolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-53)

- ***string***

---

#### Method: AbstractIntegerColumn-&gt;setComment

[](#method-abstractintegercolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-29)

- ***string*** `$comment`

##### Returns:

[](#returns-54)

- ***void***

---

#### Method: AbstractIntegerColumn-&gt;isNullable

[](#method-abstractintegercolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-55)

- ***bool***

---

#### Method: AbstractIntegerColumn-&gt;setNullable

[](#method-abstractintegercolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-30)

- ***bool*** `$nullable`

##### Returns:

[](#returns-56)

- ***void***

---

#### Method: AbstractIntegerColumn-&gt;getName

[](#method-abstractintegercolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-57)

- ***string***

---

#### Method: AbstractIntegerColumn-&gt;setName

[](#method-abstractintegercolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-31)

- ***string*** `$name`

##### Returns:

[](#returns-58)

- ***void***

---

#### Method: AbstractIntegerColumn-&gt;toString

[](#method-abstractintegercolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-32)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-59)

- ***string***

---

#### Method: AbstractIntegerColumn-&gt;getTypeName

[](#method-abstractintegercolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-60)

- ***string***

---

#### Method: AbstractIntegerColumn-&gt;getDefault

[](#method-abstractintegercolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-61)

- ***mixed***

---

#### Method: AbstractIntegerColumn-&gt;setDefault

[](#method-abstractintegercolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-33)

- ***mixed*** `$default`

##### Returns:

[](#returns-62)

- ***void***

---

#### Method: AbstractIntegerColumn-&gt;isSigned

[](#method-abstractintegercolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-63)

- ***bool***

---

#### Method: AbstractIntegerColumn-&gt;setSigned

[](#method-abstractintegercolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-34)

- ***bool*** `$signed`

---

#### Method: AbstractIntegerColumn-&gt;getLength

[](#method-abstractintegercolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-64)

- ***int*** | ***null***

---

#### Method: AbstractIntegerColumn-&gt;setLength

[](#method-abstractintegercolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-35)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\AbstractNumberColumn

[](#class-donatjmysqlschemacolumnsnumericabstractnumbercolumn)

#### Method: AbstractNumberColumn-&gt;\_\_construct

[](#method-abstractnumbercolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-36)

- ***string*** `$name`

---

#### Method: AbstractNumberColumn-&gt;getTables

[](#method-abstractnumbercolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-65)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractNumberColumn-&gt;getComment

[](#method-abstractnumbercolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-66)

- ***string***

---

#### Method: AbstractNumberColumn-&gt;setComment

[](#method-abstractnumbercolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-37)

- ***string*** `$comment`

##### Returns:

[](#returns-67)

- ***void***

---

#### Method: AbstractNumberColumn-&gt;isNullable

[](#method-abstractnumbercolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-68)

- ***bool***

---

#### Method: AbstractNumberColumn-&gt;setNullable

[](#method-abstractnumbercolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-38)

- ***bool*** `$nullable`

##### Returns:

[](#returns-69)

- ***void***

---

#### Method: AbstractNumberColumn-&gt;getName

[](#method-abstractnumbercolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-70)

- ***string***

---

#### Method: AbstractNumberColumn-&gt;setName

[](#method-abstractnumbercolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-39)

- ***string*** `$name`

##### Returns:

[](#returns-71)

- ***void***

---

#### Method: AbstractNumberColumn-&gt;toString

[](#method-abstractnumbercolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-40)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-72)

- ***string***

---

#### Method: AbstractNumberColumn-&gt;getTypeName

[](#method-abstractnumbercolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-73)

- ***string***

---

#### Method: AbstractNumberColumn-&gt;getDefault

[](#method-abstractnumbercolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-74)

- ***mixed***

---

#### Method: AbstractNumberColumn-&gt;setDefault

[](#method-abstractnumbercolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-41)

- ***mixed*** `$default`

##### Returns:

[](#returns-75)

- ***void***

---

#### Method: AbstractNumberColumn-&gt;isSigned

[](#method-abstractnumbercolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-76)

- ***bool***

---

#### Method: AbstractNumberColumn-&gt;setSigned

[](#method-abstractnumbercolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-42)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\FixedPoint\\DecimalColumn

[](#class-donatjmysqlschemacolumnsnumericfixedpointdecimalcolumn)

#### Method: DecimalColumn-&gt;\_\_construct

[](#method-decimalcolumn-__construct)

```
function __construct($name, $maxDigits, $decimalPlaces)
```

##### Parameters:

[](#parameters-43)

- ***string*** `$name`
- ***int*** `$maxDigits`
- ***int*** `$decimalPlaces`

---

#### Method: DecimalColumn-&gt;getTypeName

[](#method-decimalcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-77)

- ***string***

---

#### Method: DecimalColumn-&gt;getMaxDigits

[](#method-decimalcolumn-getmaxdigits)

```
function getMaxDigits()
```

##### Returns:

[](#returns-78)

- ***int***

---

#### Method: DecimalColumn-&gt;setMaxDigits

[](#method-decimalcolumn-setmaxdigits)

```
function setMaxDigits($maxDigits)
```

##### Parameters:

[](#parameters-44)

- ***int*** `$maxDigits`

##### Returns:

[](#returns-79)

- ***void***

---

#### Method: DecimalColumn-&gt;getDecimalPlaces

[](#method-decimalcolumn-getdecimalplaces)

```
function getDecimalPlaces()
```

##### Returns:

[](#returns-80)

- ***int***

---

#### Method: DecimalColumn-&gt;setDecimalPlaces

[](#method-decimalcolumn-setdecimalplaces)

```
function setDecimalPlaces($decimalPlaces)
```

##### Parameters:

[](#parameters-45)

- ***int*** `$decimalPlaces`

##### Returns:

[](#returns-81)

- ***void***

---

#### Method: DecimalColumn-&gt;getTables

[](#method-decimalcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-82)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: DecimalColumn-&gt;getComment

[](#method-decimalcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-83)

- ***string***

---

#### Method: DecimalColumn-&gt;setComment

[](#method-decimalcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-46)

- ***string*** `$comment`

##### Returns:

[](#returns-84)

- ***void***

---

#### Method: DecimalColumn-&gt;isNullable

[](#method-decimalcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-85)

- ***bool***

---

#### Method: DecimalColumn-&gt;setNullable

[](#method-decimalcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-47)

- ***bool*** `$nullable`

##### Returns:

[](#returns-86)

- ***void***

---

#### Method: DecimalColumn-&gt;getName

[](#method-decimalcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-87)

- ***string***

---

#### Method: DecimalColumn-&gt;setName

[](#method-decimalcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-48)

- ***string*** `$name`

##### Returns:

[](#returns-88)

- ***void***

---

#### Method: DecimalColumn-&gt;toString

[](#method-decimalcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-49)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-89)

- ***string***

---

#### Method: DecimalColumn-&gt;getDefault

[](#method-decimalcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-90)

- ***mixed***

---

#### Method: DecimalColumn-&gt;setDefault

[](#method-decimalcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-50)

- ***mixed*** `$default`

##### Returns:

[](#returns-91)

- ***void***

---

#### Method: DecimalColumn-&gt;isSigned

[](#method-decimalcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-92)

- ***bool***

---

#### Method: DecimalColumn-&gt;setSigned

[](#method-decimalcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-51)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\FloatingPoint\\DoubleColumn

[](#class-donatjmysqlschemacolumnsnumericfloatingpointdoublecolumn)

#### Method: DoubleColumn-&gt;getTypeName

[](#method-doublecolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-93)

- ***string***

---

#### Method: DoubleColumn-&gt;\_\_construct

[](#method-doublecolumn-__construct)

```
function __construct($name, $precision)
```

##### Parameters:

[](#parameters-52)

- ***string*** `$name`
- ***int*** `$precision`

---

#### Method: DoubleColumn-&gt;getPrecision

[](#method-doublecolumn-getprecision)

```
function getPrecision()
```

##### Returns:

[](#returns-94)

- ***int***

---

#### Method: DoubleColumn-&gt;setPrecision

[](#method-doublecolumn-setprecision)

```
function setPrecision($precision)
```

##### Parameters:

[](#parameters-53)

- ***int*** `$precision`

##### Returns:

[](#returns-95)

- ***void***

---

#### Method: DoubleColumn-&gt;getTables

[](#method-doublecolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-96)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: DoubleColumn-&gt;getComment

[](#method-doublecolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-97)

- ***string***

---

#### Method: DoubleColumn-&gt;setComment

[](#method-doublecolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-54)

- ***string*** `$comment`

##### Returns:

[](#returns-98)

- ***void***

---

#### Method: DoubleColumn-&gt;isNullable

[](#method-doublecolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-99)

- ***bool***

---

#### Method: DoubleColumn-&gt;setNullable

[](#method-doublecolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-55)

- ***bool*** `$nullable`

##### Returns:

[](#returns-100)

- ***void***

---

#### Method: DoubleColumn-&gt;getName

[](#method-doublecolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-101)

- ***string***

---

#### Method: DoubleColumn-&gt;setName

[](#method-doublecolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-56)

- ***string*** `$name`

##### Returns:

[](#returns-102)

- ***void***

---

#### Method: DoubleColumn-&gt;toString

[](#method-doublecolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-57)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-103)

- ***string***

---

#### Method: DoubleColumn-&gt;getDefault

[](#method-doublecolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-104)

- ***mixed***

---

#### Method: DoubleColumn-&gt;setDefault

[](#method-doublecolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-58)

- ***mixed*** `$default`

##### Returns:

[](#returns-105)

- ***void***

---

#### Method: DoubleColumn-&gt;isSigned

[](#method-doublecolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-106)

- ***bool***

---

#### Method: DoubleColumn-&gt;setSigned

[](#method-doublecolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-59)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\FloatingPoint\\FloatColumn

[](#class-donatjmysqlschemacolumnsnumericfloatingpointfloatcolumn)

#### Method: FloatColumn-&gt;getTypeName

[](#method-floatcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-107)

- ***string***

---

#### Method: FloatColumn-&gt;\_\_construct

[](#method-floatcolumn-__construct)

```
function __construct($name, $precision)
```

##### Parameters:

[](#parameters-60)

- ***string*** `$name`
- ***int*** `$precision`

---

#### Method: FloatColumn-&gt;getPrecision

[](#method-floatcolumn-getprecision)

```
function getPrecision()
```

##### Returns:

[](#returns-108)

- ***int***

---

#### Method: FloatColumn-&gt;setPrecision

[](#method-floatcolumn-setprecision)

```
function setPrecision($precision)
```

##### Parameters:

[](#parameters-61)

- ***int*** `$precision`

##### Returns:

[](#returns-109)

- ***void***

---

#### Method: FloatColumn-&gt;getTables

[](#method-floatcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-110)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: FloatColumn-&gt;getComment

[](#method-floatcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-111)

- ***string***

---

#### Method: FloatColumn-&gt;setComment

[](#method-floatcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-62)

- ***string*** `$comment`

##### Returns:

[](#returns-112)

- ***void***

---

#### Method: FloatColumn-&gt;isNullable

[](#method-floatcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-113)

- ***bool***

---

#### Method: FloatColumn-&gt;setNullable

[](#method-floatcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-63)

- ***bool*** `$nullable`

##### Returns:

[](#returns-114)

- ***void***

---

#### Method: FloatColumn-&gt;getName

[](#method-floatcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-115)

- ***string***

---

#### Method: FloatColumn-&gt;setName

[](#method-floatcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-64)

- ***string*** `$name`

##### Returns:

[](#returns-116)

- ***void***

---

#### Method: FloatColumn-&gt;toString

[](#method-floatcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-65)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-117)

- ***string***

---

#### Method: FloatColumn-&gt;getDefault

[](#method-floatcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-118)

- ***mixed***

---

#### Method: FloatColumn-&gt;setDefault

[](#method-floatcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-66)

- ***mixed*** `$default`

##### Returns:

[](#returns-119)

- ***void***

---

#### Method: FloatColumn-&gt;isSigned

[](#method-floatcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-120)

- ***bool***

---

#### Method: FloatColumn-&gt;setSigned

[](#method-floatcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-67)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\Integers\\BigIntColumn

[](#class-donatjmysqlschemacolumnsnumericintegersbigintcolumn)

#### Method: BigIntColumn-&gt;getTypeName

[](#method-bigintcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-121)

- ***string***

---

#### Method: BigIntColumn-&gt;\_\_construct

[](#method-bigintcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-68)

- ***string*** `$name`

---

#### Method: BigIntColumn-&gt;getTables

[](#method-bigintcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-122)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: BigIntColumn-&gt;getComment

[](#method-bigintcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-123)

- ***string***

---

#### Method: BigIntColumn-&gt;setComment

[](#method-bigintcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-69)

- ***string*** `$comment`

##### Returns:

[](#returns-124)

- ***void***

---

#### Method: BigIntColumn-&gt;isNullable

[](#method-bigintcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-125)

- ***bool***

---

#### Method: BigIntColumn-&gt;setNullable

[](#method-bigintcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-70)

- ***bool*** `$nullable`

##### Returns:

[](#returns-126)

- ***void***

---

#### Method: BigIntColumn-&gt;getName

[](#method-bigintcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-127)

- ***string***

---

#### Method: BigIntColumn-&gt;setName

[](#method-bigintcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-71)

- ***string*** `$name`

##### Returns:

[](#returns-128)

- ***void***

---

#### Method: BigIntColumn-&gt;toString

[](#method-bigintcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-72)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-129)

- ***string***

---

#### Method: BigIntColumn-&gt;getDefault

[](#method-bigintcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-130)

- ***mixed***

---

#### Method: BigIntColumn-&gt;setDefault

[](#method-bigintcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-73)

- ***mixed*** `$default`

##### Returns:

[](#returns-131)

- ***void***

---

#### Method: BigIntColumn-&gt;isSigned

[](#method-bigintcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-132)

- ***bool***

---

#### Method: BigIntColumn-&gt;setSigned

[](#method-bigintcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-74)

- ***bool*** `$signed`

---

#### Method: BigIntColumn-&gt;getLength

[](#method-bigintcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-133)

- ***int*** | ***null***

---

#### Method: BigIntColumn-&gt;setLength

[](#method-bigintcolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-75)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\Integers\\IntColumn

[](#class-donatjmysqlschemacolumnsnumericintegersintcolumn)

#### Method: IntColumn-&gt;getTypeName

[](#method-intcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-134)

- ***string***

---

#### Method: IntColumn-&gt;\_\_construct

[](#method-intcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-76)

- ***string*** `$name`

---

#### Method: IntColumn-&gt;getTables

[](#method-intcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-135)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: IntColumn-&gt;getComment

[](#method-intcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-136)

- ***string***

---

#### Method: IntColumn-&gt;setComment

[](#method-intcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-77)

- ***string*** `$comment`

##### Returns:

[](#returns-137)

- ***void***

---

#### Method: IntColumn-&gt;isNullable

[](#method-intcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-138)

- ***bool***

---

#### Method: IntColumn-&gt;setNullable

[](#method-intcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-78)

- ***bool*** `$nullable`

##### Returns:

[](#returns-139)

- ***void***

---

#### Method: IntColumn-&gt;getName

[](#method-intcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-140)

- ***string***

---

#### Method: IntColumn-&gt;setName

[](#method-intcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-79)

- ***string*** `$name`

##### Returns:

[](#returns-141)

- ***void***

---

#### Method: IntColumn-&gt;toString

[](#method-intcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-80)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-142)

- ***string***

---

#### Method: IntColumn-&gt;getDefault

[](#method-intcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-143)

- ***mixed***

---

#### Method: IntColumn-&gt;setDefault

[](#method-intcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-81)

- ***mixed*** `$default`

##### Returns:

[](#returns-144)

- ***void***

---

#### Method: IntColumn-&gt;isSigned

[](#method-intcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-145)

- ***bool***

---

#### Method: IntColumn-&gt;setSigned

[](#method-intcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-82)

- ***bool*** `$signed`

---

#### Method: IntColumn-&gt;getLength

[](#method-intcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-146)

- ***int*** | ***null***

---

#### Method: IntColumn-&gt;setLength

[](#method-intcolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-83)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\Integers\\MediumIntColumn

[](#class-donatjmysqlschemacolumnsnumericintegersmediumintcolumn)

#### Method: MediumIntColumn-&gt;getTypeName

[](#method-mediumintcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-147)

- ***string***

---

#### Method: MediumIntColumn-&gt;\_\_construct

[](#method-mediumintcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-84)

- ***string*** `$name`

---

#### Method: MediumIntColumn-&gt;getTables

[](#method-mediumintcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-148)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: MediumIntColumn-&gt;getComment

[](#method-mediumintcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-149)

- ***string***

---

#### Method: MediumIntColumn-&gt;setComment

[](#method-mediumintcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-85)

- ***string*** `$comment`

##### Returns:

[](#returns-150)

- ***void***

---

#### Method: MediumIntColumn-&gt;isNullable

[](#method-mediumintcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-151)

- ***bool***

---

#### Method: MediumIntColumn-&gt;setNullable

[](#method-mediumintcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-86)

- ***bool*** `$nullable`

##### Returns:

[](#returns-152)

- ***void***

---

#### Method: MediumIntColumn-&gt;getName

[](#method-mediumintcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-153)

- ***string***

---

#### Method: MediumIntColumn-&gt;setName

[](#method-mediumintcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-87)

- ***string*** `$name`

##### Returns:

[](#returns-154)

- ***void***

---

#### Method: MediumIntColumn-&gt;toString

[](#method-mediumintcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-88)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-155)

- ***string***

---

#### Method: MediumIntColumn-&gt;getDefault

[](#method-mediumintcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-156)

- ***mixed***

---

#### Method: MediumIntColumn-&gt;setDefault

[](#method-mediumintcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-89)

- ***mixed*** `$default`

##### Returns:

[](#returns-157)

- ***void***

---

#### Method: MediumIntColumn-&gt;isSigned

[](#method-mediumintcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-158)

- ***bool***

---

#### Method: MediumIntColumn-&gt;setSigned

[](#method-mediumintcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-90)

- ***bool*** `$signed`

---

#### Method: MediumIntColumn-&gt;getLength

[](#method-mediumintcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-159)

- ***int*** | ***null***

---

#### Method: MediumIntColumn-&gt;setLength

[](#method-mediumintcolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-91)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\Integers\\SmallIntColumn

[](#class-donatjmysqlschemacolumnsnumericintegerssmallintcolumn)

#### Method: SmallIntColumn-&gt;getTypeName

[](#method-smallintcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-160)

- ***string***

---

#### Method: SmallIntColumn-&gt;\_\_construct

[](#method-smallintcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-92)

- ***string*** `$name`

---

#### Method: SmallIntColumn-&gt;getTables

[](#method-smallintcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-161)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: SmallIntColumn-&gt;getComment

[](#method-smallintcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-162)

- ***string***

---

#### Method: SmallIntColumn-&gt;setComment

[](#method-smallintcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-93)

- ***string*** `$comment`

##### Returns:

[](#returns-163)

- ***void***

---

#### Method: SmallIntColumn-&gt;isNullable

[](#method-smallintcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-164)

- ***bool***

---

#### Method: SmallIntColumn-&gt;setNullable

[](#method-smallintcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-94)

- ***bool*** `$nullable`

##### Returns:

[](#returns-165)

- ***void***

---

#### Method: SmallIntColumn-&gt;getName

[](#method-smallintcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-166)

- ***string***

---

#### Method: SmallIntColumn-&gt;setName

[](#method-smallintcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-95)

- ***string*** `$name`

##### Returns:

[](#returns-167)

- ***void***

---

#### Method: SmallIntColumn-&gt;toString

[](#method-smallintcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-96)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-168)

- ***string***

---

#### Method: SmallIntColumn-&gt;getDefault

[](#method-smallintcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-169)

- ***mixed***

---

#### Method: SmallIntColumn-&gt;setDefault

[](#method-smallintcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-97)

- ***mixed*** `$default`

##### Returns:

[](#returns-170)

- ***void***

---

#### Method: SmallIntColumn-&gt;isSigned

[](#method-smallintcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-171)

- ***bool***

---

#### Method: SmallIntColumn-&gt;setSigned

[](#method-smallintcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-98)

- ***bool*** `$signed`

---

#### Method: SmallIntColumn-&gt;getLength

[](#method-smallintcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-172)

- ***int*** | ***null***

---

#### Method: SmallIntColumn-&gt;setLength

[](#method-smallintcolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-99)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Numeric\\Integers\\TinyIntColumn

[](#class-donatjmysqlschemacolumnsnumericintegerstinyintcolumn)

#### Method: TinyIntColumn-&gt;getTypeName

[](#method-tinyintcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-173)

- ***string***

---

#### Method: TinyIntColumn-&gt;\_\_construct

[](#method-tinyintcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-100)

- ***string*** `$name`

---

#### Method: TinyIntColumn-&gt;getTables

[](#method-tinyintcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-174)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: TinyIntColumn-&gt;getComment

[](#method-tinyintcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-175)

- ***string***

---

#### Method: TinyIntColumn-&gt;setComment

[](#method-tinyintcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-101)

- ***string*** `$comment`

##### Returns:

[](#returns-176)

- ***void***

---

#### Method: TinyIntColumn-&gt;isNullable

[](#method-tinyintcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-177)

- ***bool***

---

#### Method: TinyIntColumn-&gt;setNullable

[](#method-tinyintcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-102)

- ***bool*** `$nullable`

##### Returns:

[](#returns-178)

- ***void***

---

#### Method: TinyIntColumn-&gt;getName

[](#method-tinyintcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-179)

- ***string***

---

#### Method: TinyIntColumn-&gt;setName

[](#method-tinyintcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-103)

- ***string*** `$name`

##### Returns:

[](#returns-180)

- ***void***

---

#### Method: TinyIntColumn-&gt;toString

[](#method-tinyintcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-104)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-181)

- ***string***

---

#### Method: TinyIntColumn-&gt;getDefault

[](#method-tinyintcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-182)

- ***mixed***

---

#### Method: TinyIntColumn-&gt;setDefault

[](#method-tinyintcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-105)

- ***mixed*** `$default`

##### Returns:

[](#returns-183)

- ***void***

---

#### Method: TinyIntColumn-&gt;isSigned

[](#method-tinyintcolumn-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-184)

- ***bool***

---

#### Method: TinyIntColumn-&gt;setSigned

[](#method-tinyintcolumn-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-106)

- ***bool*** `$signed`

---

#### Method: TinyIntColumn-&gt;getLength

[](#method-tinyintcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-185)

- ***int*** | ***null***

---

#### Method: TinyIntColumn-&gt;setLength

[](#method-tinyintcolumn-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-107)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\String\\AbstractCharacterColumn

[](#class-donatjmysqlschemacolumnsstringabstractcharactercolumn)

#### Method: AbstractCharacterColumn-&gt;\_\_construct

[](#method-abstractcharactercolumn-__construct)

```
function __construct($name, $length)
```

##### Parameters:

[](#parameters-108)

- ***string*** `$name`
- ***int*** `$length`

---

#### Method: AbstractCharacterColumn-&gt;getTables

[](#method-abstractcharactercolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-186)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractCharacterColumn-&gt;getComment

[](#method-abstractcharactercolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-187)

- ***string***

---

#### Method: AbstractCharacterColumn-&gt;setComment

[](#method-abstractcharactercolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-109)

- ***string*** `$comment`

##### Returns:

[](#returns-188)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;isNullable

[](#method-abstractcharactercolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-189)

- ***bool***

---

#### Method: AbstractCharacterColumn-&gt;setNullable

[](#method-abstractcharactercolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-110)

- ***bool*** `$nullable`

##### Returns:

[](#returns-190)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;getName

[](#method-abstractcharactercolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-191)

- ***string***

---

#### Method: AbstractCharacterColumn-&gt;setName

[](#method-abstractcharactercolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-111)

- ***string*** `$name`

##### Returns:

[](#returns-192)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;toString

[](#method-abstractcharactercolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-112)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-193)

- ***string***

---

#### Method: AbstractCharacterColumn-&gt;getTypeName

[](#method-abstractcharactercolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-194)

- ***string***

---

#### Method: AbstractCharacterColumn-&gt;getDefault

[](#method-abstractcharactercolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-195)

- ***mixed***

---

#### Method: AbstractCharacterColumn-&gt;setDefault

[](#method-abstractcharactercolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-113)

- ***mixed*** `$default`

##### Returns:

[](#returns-196)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;getCharset

[](#method-abstractcharactercolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-197)

- ***null*** | ***string***

---

#### Method: AbstractCharacterColumn-&gt;setCharset

[](#method-abstractcharactercolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-114)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-198)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;getCollation

[](#method-abstractcharactercolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-199)

- ***null*** | ***string***

---

#### Method: AbstractCharacterColumn-&gt;setCollation

[](#method-abstractcharactercolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-115)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-200)

- ***void***

---

#### Method: AbstractCharacterColumn-&gt;getLength

[](#method-abstractcharactercolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-201)

- ***int***

---

#### Method: AbstractCharacterColumn-&gt;setLength

[](#method-abstractcharactercolumn-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-116)

- ***int*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\String\\AbstractStringColumn

[](#class-donatjmysqlschemacolumnsstringabstractstringcolumn)

#### Method: AbstractStringColumn-&gt;\_\_construct

[](#method-abstractstringcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-117)

- ***string*** `$name`

---

#### Method: AbstractStringColumn-&gt;getTables

[](#method-abstractstringcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-202)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractStringColumn-&gt;getComment

[](#method-abstractstringcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-203)

- ***string***

---

#### Method: AbstractStringColumn-&gt;setComment

[](#method-abstractstringcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-118)

- ***string*** `$comment`

##### Returns:

[](#returns-204)

- ***void***

---

#### Method: AbstractStringColumn-&gt;isNullable

[](#method-abstractstringcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-205)

- ***bool***

---

#### Method: AbstractStringColumn-&gt;setNullable

[](#method-abstractstringcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-119)

- ***bool*** `$nullable`

##### Returns:

[](#returns-206)

- ***void***

---

#### Method: AbstractStringColumn-&gt;getName

[](#method-abstractstringcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-207)

- ***string***

---

#### Method: AbstractStringColumn-&gt;setName

[](#method-abstractstringcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-120)

- ***string*** `$name`

##### Returns:

[](#returns-208)

- ***void***

---

#### Method: AbstractStringColumn-&gt;toString

[](#method-abstractstringcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-121)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-209)

- ***string***

---

#### Method: AbstractStringColumn-&gt;getTypeName

[](#method-abstractstringcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-210)

- ***string***

---

#### Method: AbstractStringColumn-&gt;getDefault

[](#method-abstractstringcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-211)

- ***mixed***

---

#### Method: AbstractStringColumn-&gt;setDefault

[](#method-abstractstringcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-122)

- ***mixed*** `$default`

##### Returns:

[](#returns-212)

- ***void***

---

#### Method: AbstractStringColumn-&gt;getCharset

[](#method-abstractstringcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-213)

- ***null*** | ***string***

---

#### Method: AbstractStringColumn-&gt;setCharset

[](#method-abstractstringcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-123)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-214)

- ***void***

---

#### Method: AbstractStringColumn-&gt;getCollation

[](#method-abstractstringcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-215)

- ***null*** | ***string***

---

#### Method: AbstractStringColumn-&gt;setCollation

[](#method-abstractstringcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-124)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-216)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\String\\AbstractTextColumn

[](#class-donatjmysqlschemacolumnsstringabstracttextcolumn)

#### Method: AbstractTextColumn-&gt;\_\_construct

[](#method-abstracttextcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-125)

- ***string*** `$name`

---

#### Method: AbstractTextColumn-&gt;getTables

[](#method-abstracttextcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-217)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractTextColumn-&gt;getComment

[](#method-abstracttextcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-218)

- ***string***

---

#### Method: AbstractTextColumn-&gt;setComment

[](#method-abstracttextcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-126)

- ***string*** `$comment`

##### Returns:

[](#returns-219)

- ***void***

---

#### Method: AbstractTextColumn-&gt;isNullable

[](#method-abstracttextcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-220)

- ***bool***

---

#### Method: AbstractTextColumn-&gt;setNullable

[](#method-abstracttextcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-127)

- ***bool*** `$nullable`

##### Returns:

[](#returns-221)

- ***void***

---

#### Method: AbstractTextColumn-&gt;getName

[](#method-abstracttextcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-222)

- ***string***

---

#### Method: AbstractTextColumn-&gt;setName

[](#method-abstracttextcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-128)

- ***string*** `$name`

##### Returns:

[](#returns-223)

- ***void***

---

#### Method: AbstractTextColumn-&gt;toString

[](#method-abstracttextcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-129)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-224)

- ***string***

---

#### Method: AbstractTextColumn-&gt;getTypeName

[](#method-abstracttextcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-225)

- ***string***

---

#### Method: AbstractTextColumn-&gt;getDefault

[](#method-abstracttextcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-226)

- ***mixed***

---

#### Method: AbstractTextColumn-&gt;setDefault

[](#method-abstracttextcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-130)

- ***mixed*** `$default`

##### Returns:

[](#returns-227)

- ***void***

---

#### Method: AbstractTextColumn-&gt;getCharset

[](#method-abstracttextcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-228)

- ***null*** | ***string***

---

#### Method: AbstractTextColumn-&gt;setCharset

[](#method-abstracttextcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-131)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-229)

- ***void***

---

#### Method: AbstractTextColumn-&gt;getCollation

[](#method-abstracttextcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-230)

- ***null*** | ***string***

---

#### Method: AbstractTextColumn-&gt;setCollation

[](#method-abstracttextcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-132)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-231)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Character\\CharColumn

[](#class-donatjmysqlschemacolumnsstringcharactercharcolumn)

#### Method: CharColumn-&gt;getTypeName

[](#method-charcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-232)

- ***string***

---

#### Method: CharColumn-&gt;\_\_construct

[](#method-charcolumn-__construct)

```
function __construct($name, $length)
```

##### Parameters:

[](#parameters-133)

- ***string*** `$name`
- ***int*** `$length`

---

#### Method: CharColumn-&gt;getTables

[](#method-charcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-233)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: CharColumn-&gt;getComment

[](#method-charcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-234)

- ***string***

---

#### Method: CharColumn-&gt;setComment

[](#method-charcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-134)

- ***string*** `$comment`

##### Returns:

[](#returns-235)

- ***void***

---

#### Method: CharColumn-&gt;isNullable

[](#method-charcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-236)

- ***bool***

---

#### Method: CharColumn-&gt;setNullable

[](#method-charcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-135)

- ***bool*** `$nullable`

##### Returns:

[](#returns-237)

- ***void***

---

#### Method: CharColumn-&gt;getName

[](#method-charcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-238)

- ***string***

---

#### Method: CharColumn-&gt;setName

[](#method-charcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-136)

- ***string*** `$name`

##### Returns:

[](#returns-239)

- ***void***

---

#### Method: CharColumn-&gt;toString

[](#method-charcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-137)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-240)

- ***string***

---

#### Method: CharColumn-&gt;getDefault

[](#method-charcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-241)

- ***mixed***

---

#### Method: CharColumn-&gt;setDefault

[](#method-charcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-138)

- ***mixed*** `$default`

##### Returns:

[](#returns-242)

- ***void***

---

#### Method: CharColumn-&gt;getCharset

[](#method-charcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-243)

- ***null*** | ***string***

---

#### Method: CharColumn-&gt;setCharset

[](#method-charcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-139)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-244)

- ***void***

---

#### Method: CharColumn-&gt;getCollation

[](#method-charcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-245)

- ***null*** | ***string***

---

#### Method: CharColumn-&gt;setCollation

[](#method-charcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-140)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-246)

- ***void***

---

#### Method: CharColumn-&gt;getLength

[](#method-charcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-247)

- ***int***

---

#### Method: CharColumn-&gt;setLength

[](#method-charcolumn-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-141)

- ***int*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Character\\VarcharColumn

[](#class-donatjmysqlschemacolumnsstringcharactervarcharcolumn)

#### Method: VarcharColumn-&gt;getTypeName

[](#method-varcharcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-248)

- ***string***

---

#### Method: VarcharColumn-&gt;\_\_construct

[](#method-varcharcolumn-__construct)

```
function __construct($name, $length)
```

##### Parameters:

[](#parameters-142)

- ***string*** `$name`
- ***int*** `$length`

---

#### Method: VarcharColumn-&gt;getTables

[](#method-varcharcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-249)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: VarcharColumn-&gt;getComment

[](#method-varcharcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-250)

- ***string***

---

#### Method: VarcharColumn-&gt;setComment

[](#method-varcharcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-143)

- ***string*** `$comment`

##### Returns:

[](#returns-251)

- ***void***

---

#### Method: VarcharColumn-&gt;isNullable

[](#method-varcharcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-252)

- ***bool***

---

#### Method: VarcharColumn-&gt;setNullable

[](#method-varcharcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-144)

- ***bool*** `$nullable`

##### Returns:

[](#returns-253)

- ***void***

---

#### Method: VarcharColumn-&gt;getName

[](#method-varcharcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-254)

- ***string***

---

#### Method: VarcharColumn-&gt;setName

[](#method-varcharcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-145)

- ***string*** `$name`

##### Returns:

[](#returns-255)

- ***void***

---

#### Method: VarcharColumn-&gt;toString

[](#method-varcharcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-146)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-256)

- ***string***

---

#### Method: VarcharColumn-&gt;getDefault

[](#method-varcharcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-257)

- ***mixed***

---

#### Method: VarcharColumn-&gt;setDefault

[](#method-varcharcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-147)

- ***mixed*** `$default`

##### Returns:

[](#returns-258)

- ***void***

---

#### Method: VarcharColumn-&gt;getCharset

[](#method-varcharcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-259)

- ***null*** | ***string***

---

#### Method: VarcharColumn-&gt;setCharset

[](#method-varcharcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-148)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-260)

- ***void***

---

#### Method: VarcharColumn-&gt;getCollation

[](#method-varcharcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-261)

- ***null*** | ***string***

---

#### Method: VarcharColumn-&gt;setCollation

[](#method-varcharcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-149)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-262)

- ***void***

---

#### Method: VarcharColumn-&gt;getLength

[](#method-varcharcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-263)

- ***int***

---

#### Method: VarcharColumn-&gt;setLength

[](#method-varcharcolumn-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-150)

- ***int*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Text\\LongTextColumn

[](#class-donatjmysqlschemacolumnsstringtextlongtextcolumn)

#### Method: LongTextColumn-&gt;getTypeName

[](#method-longtextcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-264)

- ***string***

---

#### Method: LongTextColumn-&gt;\_\_construct

[](#method-longtextcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-151)

- ***string*** `$name`

---

#### Method: LongTextColumn-&gt;getTables

[](#method-longtextcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-265)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: LongTextColumn-&gt;getComment

[](#method-longtextcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-266)

- ***string***

---

#### Method: LongTextColumn-&gt;setComment

[](#method-longtextcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-152)

- ***string*** `$comment`

##### Returns:

[](#returns-267)

- ***void***

---

#### Method: LongTextColumn-&gt;isNullable

[](#method-longtextcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-268)

- ***bool***

---

#### Method: LongTextColumn-&gt;setNullable

[](#method-longtextcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-153)

- ***bool*** `$nullable`

##### Returns:

[](#returns-269)

- ***void***

---

#### Method: LongTextColumn-&gt;getName

[](#method-longtextcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-270)

- ***string***

---

#### Method: LongTextColumn-&gt;setName

[](#method-longtextcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-154)

- ***string*** `$name`

##### Returns:

[](#returns-271)

- ***void***

---

#### Method: LongTextColumn-&gt;toString

[](#method-longtextcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-155)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-272)

- ***string***

---

#### Method: LongTextColumn-&gt;getDefault

[](#method-longtextcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-273)

- ***mixed***

---

#### Method: LongTextColumn-&gt;setDefault

[](#method-longtextcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-156)

- ***mixed*** `$default`

##### Returns:

[](#returns-274)

- ***void***

---

#### Method: LongTextColumn-&gt;getCharset

[](#method-longtextcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-275)

- ***null*** | ***string***

---

#### Method: LongTextColumn-&gt;setCharset

[](#method-longtextcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-157)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-276)

- ***void***

---

#### Method: LongTextColumn-&gt;getCollation

[](#method-longtextcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-277)

- ***null*** | ***string***

---

#### Method: LongTextColumn-&gt;setCollation

[](#method-longtextcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-158)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-278)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Text\\MediumTextColumn

[](#class-donatjmysqlschemacolumnsstringtextmediumtextcolumn)

#### Method: MediumTextColumn-&gt;getTypeName

[](#method-mediumtextcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-279)

- ***string***

---

#### Method: MediumTextColumn-&gt;\_\_construct

[](#method-mediumtextcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-159)

- ***string*** `$name`

---

#### Method: MediumTextColumn-&gt;getTables

[](#method-mediumtextcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-280)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: MediumTextColumn-&gt;getComment

[](#method-mediumtextcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-281)

- ***string***

---

#### Method: MediumTextColumn-&gt;setComment

[](#method-mediumtextcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-160)

- ***string*** `$comment`

##### Returns:

[](#returns-282)

- ***void***

---

#### Method: MediumTextColumn-&gt;isNullable

[](#method-mediumtextcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-283)

- ***bool***

---

#### Method: MediumTextColumn-&gt;setNullable

[](#method-mediumtextcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-161)

- ***bool*** `$nullable`

##### Returns:

[](#returns-284)

- ***void***

---

#### Method: MediumTextColumn-&gt;getName

[](#method-mediumtextcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-285)

- ***string***

---

#### Method: MediumTextColumn-&gt;setName

[](#method-mediumtextcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-162)

- ***string*** `$name`

##### Returns:

[](#returns-286)

- ***void***

---

#### Method: MediumTextColumn-&gt;toString

[](#method-mediumtextcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-163)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-287)

- ***string***

---

#### Method: MediumTextColumn-&gt;getDefault

[](#method-mediumtextcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-288)

- ***mixed***

---

#### Method: MediumTextColumn-&gt;setDefault

[](#method-mediumtextcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-164)

- ***mixed*** `$default`

##### Returns:

[](#returns-289)

- ***void***

---

#### Method: MediumTextColumn-&gt;getCharset

[](#method-mediumtextcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-290)

- ***null*** | ***string***

---

#### Method: MediumTextColumn-&gt;setCharset

[](#method-mediumtextcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-165)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-291)

- ***void***

---

#### Method: MediumTextColumn-&gt;getCollation

[](#method-mediumtextcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-292)

- ***null*** | ***string***

---

#### Method: MediumTextColumn-&gt;setCollation

[](#method-mediumtextcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-166)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-293)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Text\\TextColumn

[](#class-donatjmysqlschemacolumnsstringtexttextcolumn)

#### Method: TextColumn-&gt;getTypeName

[](#method-textcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-294)

- ***string***

---

#### Method: TextColumn-&gt;\_\_construct

[](#method-textcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-167)

- ***string*** `$name`

---

#### Method: TextColumn-&gt;getTables

[](#method-textcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-295)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: TextColumn-&gt;getComment

[](#method-textcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-296)

- ***string***

---

#### Method: TextColumn-&gt;setComment

[](#method-textcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-168)

- ***string*** `$comment`

##### Returns:

[](#returns-297)

- ***void***

---

#### Method: TextColumn-&gt;isNullable

[](#method-textcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-298)

- ***bool***

---

#### Method: TextColumn-&gt;setNullable

[](#method-textcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-169)

- ***bool*** `$nullable`

##### Returns:

[](#returns-299)

- ***void***

---

#### Method: TextColumn-&gt;getName

[](#method-textcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-300)

- ***string***

---

#### Method: TextColumn-&gt;setName

[](#method-textcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-170)

- ***string*** `$name`

##### Returns:

[](#returns-301)

- ***void***

---

#### Method: TextColumn-&gt;toString

[](#method-textcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-171)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-302)

- ***string***

---

#### Method: TextColumn-&gt;getDefault

[](#method-textcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-303)

- ***mixed***

---

#### Method: TextColumn-&gt;setDefault

[](#method-textcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-172)

- ***mixed*** `$default`

##### Returns:

[](#returns-304)

- ***void***

---

#### Method: TextColumn-&gt;getCharset

[](#method-textcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-305)

- ***null*** | ***string***

---

#### Method: TextColumn-&gt;setCharset

[](#method-textcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-173)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-306)

- ***void***

---

#### Method: TextColumn-&gt;getCollation

[](#method-textcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-307)

- ***null*** | ***string***

---

#### Method: TextColumn-&gt;setCollation

[](#method-textcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-174)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-308)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\String\\Text\\TinyTextColumn

[](#class-donatjmysqlschemacolumnsstringtexttinytextcolumn)

#### Method: TinyTextColumn-&gt;getTypeName

[](#method-tinytextcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-309)

- ***string***

---

#### Method: TinyTextColumn-&gt;\_\_construct

[](#method-tinytextcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-175)

- ***string*** `$name`

---

#### Method: TinyTextColumn-&gt;getTables

[](#method-tinytextcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-310)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: TinyTextColumn-&gt;getComment

[](#method-tinytextcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-311)

- ***string***

---

#### Method: TinyTextColumn-&gt;setComment

[](#method-tinytextcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-176)

- ***string*** `$comment`

##### Returns:

[](#returns-312)

- ***void***

---

#### Method: TinyTextColumn-&gt;isNullable

[](#method-tinytextcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-313)

- ***bool***

---

#### Method: TinyTextColumn-&gt;setNullable

[](#method-tinytextcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-177)

- ***bool*** `$nullable`

##### Returns:

[](#returns-314)

- ***void***

---

#### Method: TinyTextColumn-&gt;getName

[](#method-tinytextcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-315)

- ***string***

---

#### Method: TinyTextColumn-&gt;setName

[](#method-tinytextcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-178)

- ***string*** `$name`

##### Returns:

[](#returns-316)

- ***void***

---

#### Method: TinyTextColumn-&gt;toString

[](#method-tinytextcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-179)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-317)

- ***string***

---

#### Method: TinyTextColumn-&gt;getDefault

[](#method-tinytextcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-318)

- ***mixed***

---

#### Method: TinyTextColumn-&gt;setDefault

[](#method-tinytextcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-180)

- ***mixed*** `$default`

##### Returns:

[](#returns-319)

- ***void***

---

#### Method: TinyTextColumn-&gt;getCharset

[](#method-tinytextcolumn-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-320)

- ***null*** | ***string***

---

#### Method: TinyTextColumn-&gt;setCharset

[](#method-tinytextcolumn-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-181)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-321)

- ***void***

---

#### Method: TinyTextColumn-&gt;getCollation

[](#method-tinytextcolumn-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-322)

- ***null*** | ***string***

---

#### Method: TinyTextColumn-&gt;setCollation

[](#method-tinytextcolumn-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-182)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-323)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Temporal\\AbstractTemporalColumn

[](#class-donatjmysqlschemacolumnstemporalabstracttemporalcolumn)

#### Method: AbstractTemporalColumn-&gt;\_\_construct

[](#method-abstracttemporalcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-183)

- ***string*** `$name`

---

#### Method: AbstractTemporalColumn-&gt;getTables

[](#method-abstracttemporalcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-324)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: AbstractTemporalColumn-&gt;getComment

[](#method-abstracttemporalcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-325)

- ***string***

---

#### Method: AbstractTemporalColumn-&gt;setComment

[](#method-abstracttemporalcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-184)

- ***string*** `$comment`

##### Returns:

[](#returns-326)

- ***void***

---

#### Method: AbstractTemporalColumn-&gt;isNullable

[](#method-abstracttemporalcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-327)

- ***bool***

---

#### Method: AbstractTemporalColumn-&gt;setNullable

[](#method-abstracttemporalcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-185)

- ***bool*** `$nullable`

##### Returns:

[](#returns-328)

- ***void***

---

#### Method: AbstractTemporalColumn-&gt;getName

[](#method-abstracttemporalcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-329)

- ***string***

---

#### Method: AbstractTemporalColumn-&gt;setName

[](#method-abstracttemporalcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-186)

- ***string*** `$name`

##### Returns:

[](#returns-330)

- ***void***

---

#### Method: AbstractTemporalColumn-&gt;toString

[](#method-abstracttemporalcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-187)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-331)

- ***string***

---

#### Method: AbstractTemporalColumn-&gt;getTypeName

[](#method-abstracttemporalcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-332)

- ***string***

---

#### Method: AbstractTemporalColumn-&gt;getDefault

[](#method-abstracttemporalcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-333)

- ***mixed***

---

#### Method: AbstractTemporalColumn-&gt;setDefault

[](#method-abstracttemporalcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-188)

- ***mixed*** `$default`

##### Returns:

[](#returns-334)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Temporal\\DateTimeColumn

[](#class-donatjmysqlschemacolumnstemporaldatetimecolumn)

#### Method: DateTimeColumn-&gt;getTypeName

[](#method-datetimecolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-335)

- ***string***

---

#### Method: DateTimeColumn-&gt;\_\_construct

[](#method-datetimecolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-189)

- ***string*** `$name`

---

#### Method: DateTimeColumn-&gt;getTables

[](#method-datetimecolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-336)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: DateTimeColumn-&gt;getComment

[](#method-datetimecolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-337)

- ***string***

---

#### Method: DateTimeColumn-&gt;setComment

[](#method-datetimecolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-190)

- ***string*** `$comment`

##### Returns:

[](#returns-338)

- ***void***

---

#### Method: DateTimeColumn-&gt;isNullable

[](#method-datetimecolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-339)

- ***bool***

---

#### Method: DateTimeColumn-&gt;setNullable

[](#method-datetimecolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-191)

- ***bool*** `$nullable`

##### Returns:

[](#returns-340)

- ***void***

---

#### Method: DateTimeColumn-&gt;getName

[](#method-datetimecolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-341)

- ***string***

---

#### Method: DateTimeColumn-&gt;setName

[](#method-datetimecolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-192)

- ***string*** `$name`

##### Returns:

[](#returns-342)

- ***void***

---

#### Method: DateTimeColumn-&gt;toString

[](#method-datetimecolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-193)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-343)

- ***string***

---

#### Method: DateTimeColumn-&gt;getDefault

[](#method-datetimecolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-344)

- ***mixed***

---

#### Method: DateTimeColumn-&gt;setDefault

[](#method-datetimecolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-194)

- ***mixed*** `$default`

##### Returns:

[](#returns-345)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Temporal\\TimeColumn

[](#class-donatjmysqlschemacolumnstemporaltimecolumn)

#### Method: TimeColumn-&gt;getTypeName

[](#method-timecolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-346)

- ***string***

---

#### Method: TimeColumn-&gt;\_\_construct

[](#method-timecolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-195)

- ***string*** `$name`

---

#### Method: TimeColumn-&gt;getTables

[](#method-timecolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-347)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: TimeColumn-&gt;getComment

[](#method-timecolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-348)

- ***string***

---

#### Method: TimeColumn-&gt;setComment

[](#method-timecolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-196)

- ***string*** `$comment`

##### Returns:

[](#returns-349)

- ***void***

---

#### Method: TimeColumn-&gt;isNullable

[](#method-timecolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-350)

- ***bool***

---

#### Method: TimeColumn-&gt;setNullable

[](#method-timecolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-197)

- ***bool*** `$nullable`

##### Returns:

[](#returns-351)

- ***void***

---

#### Method: TimeColumn-&gt;getName

[](#method-timecolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-352)

- ***string***

---

#### Method: TimeColumn-&gt;setName

[](#method-timecolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-198)

- ***string*** `$name`

##### Returns:

[](#returns-353)

- ***void***

---

#### Method: TimeColumn-&gt;toString

[](#method-timecolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-199)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-354)

- ***string***

---

#### Method: TimeColumn-&gt;getDefault

[](#method-timecolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-355)

- ***mixed***

---

#### Method: TimeColumn-&gt;setDefault

[](#method-timecolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-200)

- ***mixed*** `$default`

##### Returns:

[](#returns-356)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Temporal\\TimestampColumn

[](#class-donatjmysqlschemacolumnstemporaltimestampcolumn)

#### Method: TimestampColumn-&gt;getTypeName

[](#method-timestampcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-357)

- ***string***

---

#### Method: TimestampColumn-&gt;\_\_construct

[](#method-timestampcolumn-__construct)

```
function __construct($name)
```

##### Parameters:

[](#parameters-201)

- ***string*** `$name`

---

#### Method: TimestampColumn-&gt;getTables

[](#method-timestampcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-358)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: TimestampColumn-&gt;getComment

[](#method-timestampcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-359)

- ***string***

---

#### Method: TimestampColumn-&gt;setComment

[](#method-timestampcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-202)

- ***string*** `$comment`

##### Returns:

[](#returns-360)

- ***void***

---

#### Method: TimestampColumn-&gt;isNullable

[](#method-timestampcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-361)

- ***bool***

---

#### Method: TimestampColumn-&gt;setNullable

[](#method-timestampcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-203)

- ***bool*** `$nullable`

##### Returns:

[](#returns-362)

- ***void***

---

#### Method: TimestampColumn-&gt;getName

[](#method-timestampcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-363)

- ***string***

---

#### Method: TimestampColumn-&gt;setName

[](#method-timestampcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-204)

- ***string*** `$name`

##### Returns:

[](#returns-364)

- ***void***

---

#### Method: TimestampColumn-&gt;toString

[](#method-timestampcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-205)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-365)

- ***string***

---

#### Method: TimestampColumn-&gt;getDefault

[](#method-timestampcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-366)

- ***mixed***

---

#### Method: TimestampColumn-&gt;setDefault

[](#method-timestampcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-206)

- ***mixed*** `$default`

##### Returns:

[](#returns-367)

- ***void***

### Class: \\donatj\\MySqlSchema\\Columns\\Temporal\\YearColumn

[](#class-donatjmysqlschemacolumnstemporalyearcolumn)

#### Method: YearColumn-&gt;\_\_construct

[](#method-yearcolumn-__construct)

```
function __construct($name [, $length = 4])
```

##### Parameters:

[](#parameters-207)

- ***string*** `$name`
- ***int*** `$length` - 2 or 4

---

#### Method: YearColumn-&gt;setLength

[](#method-yearcolumn-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-208)

- ***int*** `$length` - 2 or 4

**Throws**: `\InvalidArgumentException`

##### Returns:

[](#returns-368)

- ***void***

---

#### Method: YearColumn-&gt;getTypeName

[](#method-yearcolumn-gettypename)

```
function getTypeName()
```

##### Returns:

[](#returns-369)

- ***string***

---

#### Method: YearColumn-&gt;getTables

[](#method-yearcolumn-gettables)

```
function getTables()
```

##### Returns:

[](#returns-370)

- ***\\donatj\\MySqlSchema\\Table\[\]***

---

#### Method: YearColumn-&gt;getComment

[](#method-yearcolumn-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-371)

- ***string***

---

#### Method: YearColumn-&gt;setComment

[](#method-yearcolumn-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-209)

- ***string*** `$comment`

##### Returns:

[](#returns-372)

- ***void***

---

#### Method: YearColumn-&gt;isNullable

[](#method-yearcolumn-isnullable)

```
function isNullable()
```

##### Returns:

[](#returns-373)

- ***bool***

---

#### Method: YearColumn-&gt;setNullable

[](#method-yearcolumn-setnullable)

```
function setNullable($nullable)
```

##### Parameters:

[](#parameters-210)

- ***bool*** `$nullable`

##### Returns:

[](#returns-374)

- ***void***

---

#### Method: YearColumn-&gt;getName

[](#method-yearcolumn-getname)

```
function getName()
```

##### Returns:

[](#returns-375)

- ***string***

---

#### Method: YearColumn-&gt;setName

[](#method-yearcolumn-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-211)

- ***string*** `$name`

##### Returns:

[](#returns-376)

- ***void***

---

#### Method: YearColumn-&gt;toString

[](#method-yearcolumn-tostring)

```
function toString(\donatj\MySqlSchema\Table $table)
```

##### Parameters:

[](#parameters-212)

- ***\\donatj\\MySqlSchema\\Table*** `$table`

##### Returns:

[](#returns-377)

- ***string***

---

#### Method: YearColumn-&gt;getDefault

[](#method-yearcolumn-getdefault)

```
function getDefault()
```

##### Returns:

[](#returns-378)

- ***mixed***

---

#### Method: YearColumn-&gt;setDefault

[](#method-yearcolumn-setdefault)

```
function setDefault($default)
```

##### Parameters:

[](#parameters-213)

- ***mixed*** `$default`

##### Returns:

[](#returns-379)

- ***void***

---

#### Method: YearColumn-&gt;getLength

[](#method-yearcolumn-getlength)

```
function getLength()
```

##### Returns:

[](#returns-380)

- ***int***

### Class: \\donatj\\MySqlSchema\\Columns\\Traits\\OptionalLengthTrait

[](#class-donatjmysqlschemacolumnstraitsoptionallengthtrait)

#### Method: OptionalLengthTrait-&gt;getLength

[](#method-optionallengthtrait-getlength)

```
function getLength()
```

##### Returns:

[](#returns-381)

- ***int*** | ***null***

---

#### Method: OptionalLengthTrait-&gt;setLength

[](#method-optionallengthtrait-setlength)

```
function setLength([ $length = null])
```

##### Parameters:

[](#parameters-214)

- ***int*** | ***null*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Traits\\RequiredLengthTrait

[](#class-donatjmysqlschemacolumnstraitsrequiredlengthtrait)

#### Method: RequiredLengthTrait-&gt;getLength

[](#method-requiredlengthtrait-getlength)

```
function getLength()
```

##### Returns:

[](#returns-382)

- ***int***

---

#### Method: RequiredLengthTrait-&gt;setLength

[](#method-requiredlengthtrait-setlength)

```
function setLength($length)
```

##### Parameters:

[](#parameters-215)

- ***int*** `$length`

### Class: \\donatj\\MySqlSchema\\Columns\\Traits\\SignedTrait

[](#class-donatjmysqlschemacolumnstraitssignedtrait)

#### Method: SignedTrait-&gt;isSigned

[](#method-signedtrait-issigned)

```
function isSigned()
```

##### Returns:

[](#returns-383)

- ***bool***

---

#### Method: SignedTrait-&gt;setSigned

[](#method-signedtrait-setsigned)

```
function setSigned($signed)
```

##### Parameters:

[](#parameters-216)

- ***bool*** `$signed`

### Class: \\donatj\\MySqlSchema\\Table

[](#class-donatjmysqlschematable)

#### Method: Table-&gt;\_\_construct

[](#method-table-__construct)

```
function __construct($name)
```

Table constructor.

##### Parameters:

[](#parameters-217)

- ***string*** `$name`

---

#### Method: Table-&gt;getColumns

[](#method-table-getcolumns)

```
function getColumns()
```

##### Returns:

[](#returns-384)

- ***\\donatj\\MySqlSchema\\Columns\\AbstractColumn\[\]***

---

#### Method: Table-&gt;getComment

[](#method-table-getcomment)

```
function getComment()
```

##### Returns:

[](#returns-385)

- ***string***

---

#### Method: Table-&gt;setComment

[](#method-table-setcomment)

```
function setComment($comment)
```

##### Parameters:

[](#parameters-218)

- ***string*** `$comment`

##### Returns:

[](#returns-386)

- ***void***

---

#### Method: Table-&gt;getEngine

[](#method-table-getengine)

```
function getEngine()
```

##### Returns:

[](#returns-387)

- ***null*** | ***string***

---

#### Method: Table-&gt;setEngine

[](#method-table-setengine)

```
function setEngine($engine)
```

##### Parameters:

[](#parameters-219)

- ***null*** | ***string*** `$engine`

##### Returns:

[](#returns-388)

- ***void***

---

#### Method: Table-&gt;getName

[](#method-table-getname)

```
function getName()
```

##### Returns:

[](#returns-389)

- ***string***

---

#### Method: Table-&gt;setName

[](#method-table-setname)

```
function setName($name)
```

##### Parameters:

[](#parameters-220)

- ***string*** `$name`

##### Returns:

[](#returns-390)

- ***void***

---

#### Method: Table-&gt;addAutoIncrement

[](#method-table-addautoincrement)

```
function addAutoIncrement(\donatj\MySqlSchema\Columns\Numeric\AbstractIntegerColumn $column)
```

##### Returns:

[](#returns-391)

- ***void***

---

#### Method: Table-&gt;getAutoIncrementColumn

[](#method-table-getautoincrementcolumn)

```
function getAutoIncrementColumn()
```

##### Returns:

[](#returns-392)

- ***\\donatj\\MySqlSchema\\Columns\\Numeric\\AbstractIntegerColumn*** | ***null***

---

#### Method: Table-&gt;isAutoIncrement

[](#method-table-isautoincrement)

```
function isAutoIncrement(\donatj\MySqlSchema\Columns\Numeric\AbstractIntegerColumn $column)
```

##### Parameters:

[](#parameters-221)

- ***\\donatj\\MySqlSchema\\Columns\\Numeric\\AbstractIntegerColumn*** `$column`

##### Returns:

[](#returns-393)

- ***bool***

---

#### Method: Table-&gt;addPrimaryKey

[](#method-table-addprimarykey)

```
function addPrimaryKey(\donatj\MySqlSchema\Columns\AbstractColumn $column)
```

##### Returns:

[](#returns-394)

- ***void***

---

#### Method: Table-&gt;isPrimaryKey

[](#method-table-isprimarykey)

```
function isPrimaryKey(\donatj\MySqlSchema\Columns\AbstractColumn $column)
```

##### Parameters:

[](#parameters-222)

- ***\\donatj\\MySqlSchema\\Columns\\AbstractColumn*** `$column`

##### Returns:

[](#returns-395)

- ***bool***

---

#### Method: Table-&gt;addKeyColumn

[](#method-table-addkeycolumn)

```
function addKeyColumn($keyName, \donatj\MySqlSchema\Columns\AbstractColumn $column [, $index = null [, $type = 'NORMAL' [, $method = '']]])
```

##### Parameters:

[](#parameters-223)

- ***string*** `$keyName`
- ***\\donatj\\MySqlSchema\\Columns\\AbstractColumn*** `$column`
- ***int*** | ***null*** `$index`
- ***string*** `$type`
- ***string*** `$method`

##### Returns:

[](#returns-396)

- ***void***

---

#### Method: Table-&gt;addForeignKey

[](#method-table-addforeignkey)

```
function addForeignKey(\donatj\MySqlSchema\Columns\AbstractColumn $local, \donatj\MySqlSchema\Columns\AbstractColumn $remote)
```

##### Returns:

[](#returns-397)

- ***void***

---

#### Method: Table-&gt;addColumn

[](#method-table-addcolumn)

```
function addColumn(\donatj\MySqlSchema\Columns\AbstractColumn $column)
```

##### Returns:

[](#returns-398)

- ***void***

---

#### Method: Table-&gt;toString

[](#method-table-tostring)

```
function toString()
```

##### Returns:

[](#returns-399)

- ***string***

---

#### Method: Table-&gt;getCharset

[](#method-table-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-400)

- ***null*** | ***string***

---

#### Method: Table-&gt;setCharset

[](#method-table-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-224)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-401)

- ***void***

---

#### Method: Table-&gt;getCollation

[](#method-table-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-402)

- ***null*** | ***string***

---

#### Method: Table-&gt;setCollation

[](#method-table-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-225)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-403)

- ***void***

### Class: \\donatj\\MySqlSchema\\Traits\\CharsetAndCollationTrait

[](#class-donatjmysqlschematraitscharsetandcollationtrait)

#### Method: CharsetAndCollationTrait-&gt;getCharset

[](#method-charsetandcollationtrait-getcharset)

```
function getCharset()
```

##### Returns:

[](#returns-404)

- ***null*** | ***string***

---

#### Method: CharsetAndCollationTrait-&gt;setCharset

[](#method-charsetandcollationtrait-setcharset)

```
function setCharset($charset)
```

##### Parameters:

[](#parameters-226)

- ***null*** | ***string*** `$charset`

##### Returns:

[](#returns-405)

- ***void***

---

#### Method: CharsetAndCollationTrait-&gt;getCollation

[](#method-charsetandcollationtrait-getcollation)

```
function getCollation()
```

##### Returns:

[](#returns-406)

- ***null*** | ***string***

---

#### Method: CharsetAndCollationTrait-&gt;setCollation

[](#method-charsetandcollationtrait-setcollation)

```
function setCollation($collation)
```

##### Parameters:

[](#parameters-227)

- ***null*** | ***string*** `$collation`

##### Returns:

[](#returns-407)

- ***void***

### Class: \\donatj\\MySqlSchema\\Traits\\EscapeTrait

[](#class-donatjmysqlschematraitsescapetrait)

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance82

Actively maintained with recent releases

Popularity13

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1019 days

Total

4

Last Release

94d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/a57a02ba022451a54d4b65e227ce3d032cadc638a644c2d4b56f0313632ee656?d=identicon)[donatj](/maintainers/donatj)

---

Top Contributors

[![donatj](https://avatars.githubusercontent.com/u/133747?v=4)](https://github.com/donatj "donatj (30 commits)")

---

Tags

schemamysqlmodeling

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/donatj-mysql-schema/health.svg)

```
[![Health](https://phpackages.com/badges/donatj-mysql-schema/health.svg)](https://phpackages.com/packages/donatj-mysql-schema)
```

###  Alternatives

[aura/sqlschema

Provides facilities to read table names and table columns from a database using PDO.

41234.1k4](/packages/aura-sqlschema)[ekhaled/f3-cortex-model-generator

Generates F3 Cortex models by reverse engineering existing database schema

151.1k1](/packages/ekhaled-f3-cortex-model-generator)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
