Structure
Defines a new table structure for managing columns efficiently.
Methods
constructor()
→ (tableDescription? = Array<ColumnStructure>) → this
Create a new Structure instance.
Parameters
| Parameter | Type | Description |
|---|---|---|
tableDescription optional | Array<ColumnStructure> | A list of column structure objects defining table columns. A table description can be retrieved using the get() method and later reloaded by passing it to the Structure constructor. |
Returns
→ this - The instance of Structure.
get()
→ () → Array<ColumnStructure>
Retrieves an array of all defined columns in the Structure as ColumnStructure objects.
Returns
→ Array<ColumnStructure> - A list of defined columns.
drop()
→ (name = String) → this
Removes a column from the structure.
Parameters
| Parameter | Type | Description |
|---|---|---|
name | String | The column name to remove. |
Returns
→ this
Column Methods
Each of these methods adds a column of the specified type to the structure.
String-Based Columns
| Method | Parameters | Description |
|---|---|---|
char(name: String, size?: Number, options?: ConstraintOptions) | size: (0-255, default 1) | Adds a fixed-length character column. |
varchar(name: String, size?: Number, options?: ConstraintOptions) | size: (0-255, default 1) | Adds a variable-length character column. |
tinytext(name: String, options?: ConstraintOptions) | - | Adds a tinytext column. |
text(name: String, options?: ConstraintOptions) | - | Adds a text column. |
mediumtext(name: String, options?: ConstraintOptions) | - | Adds a mediumtext column. |
longtext(name: String, options?: ConstraintOptions) | - | Adds a longtext column. |
Binary Data Columns
| Method | Parameters | Description |
|---|---|---|
binary(name: String, size?: Number, options?: ConstraintOptions) | size: (1+, default 1) | Adds a binary column. |
varbinary(name: String, size?: Number, options?: ConstraintOptions) | size: (0+, default 1) | Adds a variable-length binary column. |
tinyblob(name: String, options?: ConstraintOptions) | - | Adds a tinyblob column. |
blob(name: String, size?: Number, options?: ConstraintOptions) | size: (0-65535, default 65535) | Adds a blob column. |
longblobl(name: String, options?: ConstraintOptions) | - | Adds a longblob column. |
| Method | Parameters | Description |
|---|---|---|
enum(name: String, vals: Array<String>, options?: ConstraintOptions) | vals: Array of allowed values | Adds an enum column with predefined values. |
set(name: String, vals: Array<String>, options?: ConstraintOptions) | vals: Array of allowed values | Adds a set column with multiple selectable values. |
Numeric Columns
| Method | Parameters | Description |
|---|---|---|
bit(name: String, size?: Number, options?: ConstraintOptions) | size: (1-64, default 1) | Adds a bit column. |
tinyint(name: String, size?: Number, options?: ConstraintOptions) | size: (1-255, default 255) | Adds a tinyint column. |
bool(name: String, options?: ConstraintOptions) | - | Alias for tinyint(1). |
smallint(name: String, size?: Number, options?: ConstraintOptions) | size: (1-255, default 255) | Adds a smallint column. |
mediumint(name: String, size?: Number, options?: ConstraintOptions) | size: (1-255, default 255) | Adds a mediumint column. |
int(name: String, size?: Number, options?: ConstraintOptions) | size: (1-255, default 255) | Adds an int column. |
bigint(name: String, size?: Number, options?: ConstraintOptions) | size: (1-255, default 255) | Adds a bigint column. |
Floating Point & Decimal Columns
| Method | Parameters | Description |
|---|---|---|
float(name: String, p?: Number, options?: ConstraintOptions) | p: (1-53, default 25) | Adds a float column. |
double(name: String, size?: Number, d?: Number, options?: ConstraintOptions) | size: (1+, default 16)d: (1+, default 8) | Adds a double dolumn. |
decimal(name: String, size?: Number, d?: Number, options?: ConstraintOptions) | size: (1+, default 16)d: (1+, default 8) | Adds a decimal column. |
Date & Time Columns
| Method | Parameters | Description |
|---|---|---|
date(name: String, options?: ConstraintOptions) | - | Adds a date column. |
datetime(name: String, fsp?: Number, options?: ConstraintOptions) | fsp: (0-6, default 0) | Adds a datetime column. |
timestamp(name: String, fsp?: Number, options?: ConstraintOptions) | fsp: (0-6, default 0) | Adds a timestamp column. |
time(name: String, fsp?: Number, options?: ConstraintOptions) | fsp: (0-6, default 0) | Adds a time column. |
year(name: String, options?: ConstraintOptions) | - | Adds a year column. |