Merge pull request #23656 from tuitionio/knex-table-builder

knex - Added missing schema builder parameters
This commit is contained in:
Daniel Rosenwasser
2018-02-15 10:57:58 -08:00
committed by GitHub
2 changed files with 9 additions and 5 deletions

10
types/knex/index.d.ts vendored
View File

@@ -428,7 +428,7 @@ declare namespace Knex {
date(columnName: string): ColumnBuilder;
dateTime(columnName: string): ColumnBuilder;
time(columnName: string): ColumnBuilder;
timestamp(columnName: string): ColumnBuilder;
timestamp(columnName: string, standard?: boolean): ColumnBuilder;
timestamps(useTimestampType?: boolean, makeDefaultNow?: boolean): ColumnBuilder;
binary(columnName: string, length?: number): ColumnBuilder;
enum(columnName: string, values: Value[]): ColumnBuilder;
@@ -441,8 +441,8 @@ declare namespace Knex {
primary(columnNames: string[]): TableBuilder;
index(columnNames: (string | Raw)[], indexName?: string, indexType?: string): TableBuilder;
unique(columnNames: (string | Raw)[], indexName?: string): TableBuilder;
foreign(column: string): ForeignConstraintBuilder;
foreign(columns: string[]): MultikeyForeignConstraintBuilder;
foreign(column: string, foreignKeyName?: string): ForeignConstraintBuilder;
foreign(columns: string[], foreignKeyName?: string): MultikeyForeignConstraintBuilder;
dropForeign(columnNames: string[], foreignKeyName?: string): TableBuilder;
dropUnique(columnNames: (string | Raw)[], indexName?: string): TableBuilder;
dropPrimary(constraintName?: string): TableBuilder;
@@ -467,8 +467,8 @@ declare namespace Knex {
interface ColumnBuilder {
index(indexName?: string): ColumnBuilder;
primary(): ColumnBuilder;
unique(): ColumnBuilder;
primary(constraintName?: string): ColumnBuilder;
unique(indexName?: string): ColumnBuilder;
references(columnName: string): ReferencingColumnBuilder;
onDelete(command: string): ColumnBuilder;
onUpdate(command: string): ColumnBuilder;

View File

@@ -1040,6 +1040,10 @@ knex.schema
.dropTableIfExists('A')
.createTable('A', table => {
table.integer('C').unsigned().references('B.id').notNullable();
table.integer('D').primary('PK').notNullable();
table.string('E').unique('UX').nullable();
table.foreign('E', 'FK').references('F.id');
table.timestamp('T', false).notNullable();
});