TableV2<Columns>
Generate a new table from the columns and indexes
Deprecated
You should use Table instead as it now allows TableV2 syntax. This will be removed in the next major release.
Extends
Table
<Columns
>
Type Parameters
Type Parameter | Default type |
---|---|
Columns extends ColumnsType | ColumnsType |
Constructors
new TableV2()
new TableV2<Columns>(columns, options?): TableV2<Columns>
Creates a new Table instance.
This constructor supports two different versions:
- New constructor: Using a Columns object and an optional TableV2Options object
- Deprecated constructor: Using a TableOptions object (will be removed in the next major release)
Parameters
Parameter | Type |
---|---|
columns | Columns |
options ? | TableV2Options |
Returns
TableV2
<Columns
>
Examples
// New Constructor
const table = new Table(
{
name: column.text,
age: column.integer
},
{ indexes: { nameIndex: ['name'] } }
);
// Deprecated Constructor
const table = new Table({
name: 'users',
columns: [
new Column({ name: 'name', type: ColumnType.TEXT }),
new Column({ name: 'age', type: ColumnType.INTEGER })
]
});
Inherited from
new TableV2()
new TableV2<Columns>(options): TableV2<Columns>
Parameters
Parameter | Type |
---|---|
options | TableOptions |
Returns
TableV2
<Columns
>
Deprecated
This constructor will be removed in the next major release. Use the new constructor shown below instead as this does not show types.
Example
Use this instead ```javascript const table = new Table( { name: column.text, age: column.integer }, { indexes: { nameIndex: ['name'] } } ); ```Inherited from
Accessors
columnMap
Get Signature
get columnMap(): Columns
Returns
Columns
Inherited from
columns
Get Signature
get columns(): Column[]
Returns
Column
[]
Inherited from
indexes
Get Signature
get indexes(): Index[]
Returns
Index
[]
Inherited from
insertOnly
Get Signature
get insertOnly(): boolean
Returns
boolean
Inherited from
internalName
Get Signature
get internalName(): string
Returns
string
Inherited from
localOnly
Get Signature
get localOnly(): boolean
Returns
boolean
Inherited from
name
Get Signature
get name(): string
Returns
string
Inherited from
validName
Get Signature
get validName(): boolean
Returns
boolean
Inherited from
viewName
Get Signature
get viewName(): string
Returns
string
Inherited from
viewNameOverride
Get Signature
get viewNameOverride(): undefined | string
Returns
undefined
| string
Inherited from
Methods
toJSON()
toJSON(): {
columns: {
name: string;
type: undefined | ColumnType;
}[];
indexes: {
columns: {
ascending: undefined | boolean;
name: string;
type: ColumnType;
}[];
name: string;
}[];
insert_only: boolean;
local_only: boolean;
name: string;
view_name: string;
}
Returns
{
columns: {
name: string;
type: undefined | ColumnType;
}[];
indexes: {
columns: {
ascending: undefined | boolean;
name: string;
type: ColumnType;
}[];
name: string;
}[];
insert_only: boolean;
local_only: boolean;
name: string;
view_name: string;
}
Name | Type |
---|---|
columns | { name : string ; type : undefined | ColumnType ; }[] |
indexes | { columns : { ascending : undefined | boolean ; name : string ; type : ColumnType ; }[]; name : string ; }[] |
insert_only | boolean |
local_only | boolean |
name | string |
view_name | string |
Inherited from
validate()
validate(): void
Returns
void
Inherited from
createInsertOnly()
static createInsertOnly(options): Table<ColumnsType>
Parameters
Parameter | Type |
---|---|
options | TableOptions |
Returns
Inherited from
createLocalOnly()
static createLocalOnly(options): Table<ColumnsType>
Parameters
Parameter | Type |
---|---|
options | TableOptions |
Returns
Inherited from
createTable()
static createTable(name, table): Table<ColumnsType>
Create a table.
Parameters
Parameter | Type |
---|---|
name | string |
table | Table <ColumnsType > |
Returns
Deprecated
This was only only included for TableV2 and is no longer necessary. Prefer to use new Table() directly.
TODO remove in the next major release.