add foreign keys and constraints (#17697)

* foreign keys and constraints

* refactoring

* fix issues
This commit is contained in:
Alan Ren
2021-11-17 19:15:24 -08:00
committed by GitHub
parent 6f03cbac97
commit 7c26e14605
8 changed files with 310 additions and 75 deletions

View File

@@ -572,6 +572,9 @@ export function createAdsApiFactory(accessor: ServicesAccessor): IAdsExtensionAp
const designers: typeof azdata.designers = {
TableProperty: sqlExtHostTypes.designers.TableProperty,
TableColumnProperty: sqlExtHostTypes.designers.TableColumnProperty,
TableForeignKeyProperty: sqlExtHostTypes.designers.TableForeignKeyProperty,
ForeignKeyColumnMappingProperty: sqlExtHostTypes.designers.ForeignKeyColumnMappingProperty,
TableCheckConstraintProperty: sqlExtHostTypes.designers.TableCheckConstraintProperty,
DesignerEditType: sqlExtHostTypes.designers.DesignerEditType,
openTableDesigner(providerId, tableInfo: azdata.designers.TableInfo): Promise<void> {
return extHostDataProvider.$openTableDesigner(providerId, tableInfo);

View File

@@ -913,7 +913,9 @@ export namespace designers {
Name = 'name',
Description = 'description',
Columns = 'columns',
Script = 'script'
Script = 'script',
ForeignKeys = 'foreignKeys',
CheckConstraints = 'checkConstraints',
}
export enum TableColumnProperty {
@@ -927,6 +929,24 @@ export namespace designers {
Scale = 'scale'
}
export enum TableForeignKeyProperty {
Name = 'name',
PrimaryKeyTable = 'primaryKeyTable',
OnDeleteAction = 'onDeleteAction',
OnUpdateAction = 'onUpdateAction',
Columns = 'columns'
}
export enum ForeignKeyColumnMappingProperty {
PrimaryKeyColumn = 'primaryKeyColumn',
ForeignKeyColumn = 'foreignKeyColumn'
}
export enum TableCheckConstraintProperty {
Name = 'name',
Expression = 'expression'
}
export enum DesignerEditType {
Add = 0,
Remove = 1,