typeorm 0.2.45-dev.96ac8f7 → 0.2.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/browser/cache/DbQueryResultCache.js +6 -6
- package/browser/cache/DbQueryResultCache.js.map +1 -1
- package/browser/cache/RedisQueryResultCache.js +2 -2
- package/browser/cache/RedisQueryResultCache.js.map +1 -1
- package/browser/connection/Connection.js +2 -2
- package/browser/connection/Connection.js.map +1 -1
- package/browser/connection/ConnectionOptionsReader.js +2 -2
- package/browser/connection/ConnectionOptionsReader.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
- package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +178 -171
- package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
- package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
- package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
- package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/browser/driver/capacitor/CapacitorDriver.js +1 -1
- package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.js +1 -1
- package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.js +6 -6
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +172 -166
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.js +1 -1
- package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/browser/driver/expo/ExpoQueryRunner.js +3 -3
- package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/browser/driver/mongodb/MongoDriver.js +4 -4
- package/browser/driver/mongodb/MongoDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlDriver.js +11 -11
- package/browser/driver/mysql/MysqlDriver.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +184 -177
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.js +1 -1
- package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleDriver.js +10 -10
- package/browser/driver/oracle/OracleDriver.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +145 -138
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.js +18 -18
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +248 -242
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js +1 -1
- package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapDriver.js +9 -9
- package/browser/driver/sap/SapDriver.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +145 -139
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/sqlite/SqliteDriver.js +4 -4
- package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
- package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +82 -76
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqljs/SqljsDriver.js +3 -3
- package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerDriver.js +11 -11
- package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +226 -218
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/entity-manager/EntityManager.js +4 -4
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/entity-manager/MongoEntityManager.js +1 -1
- package/browser/entity-manager/MongoEntityManager.js.map +1 -1
- package/browser/entity-schema/EntitySchemaEmbeddedError.js +2 -2
- package/browser/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/browser/error/AlreadyHasActiveConnectionError.js +1 -1
- package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/browser/error/CannotAttachTreeChildrenEntityError.js +1 -1
- package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.js +1 -1
- package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/browser/error/CannotCreateEntityIdMapError.js +1 -1
- package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/browser/error/CannotDetermineEntityError.js +1 -1
- package/browser/error/CannotDetermineEntityError.js.map +1 -1
- package/browser/error/CannotExecuteNotConnectedError.js +1 -1
- package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/browser/error/CannotGetEntityManagerNotConnectedError.js +1 -1
- package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/browser/error/CannotReflectMethodParameterTypeError.js +1 -1
- package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/browser/error/CircularRelationsError.js +1 -1
- package/browser/error/CircularRelationsError.js.map +1 -1
- package/browser/error/ColumnTypeUndefinedError.js +1 -1
- package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
- package/browser/error/ConnectionIsNotSetError.js +1 -1
- package/browser/error/ConnectionIsNotSetError.js.map +1 -1
- package/browser/error/ConnectionNotFoundError.js +1 -1
- package/browser/error/ConnectionNotFoundError.js.map +1 -1
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
- package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
- package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
- package/browser/error/CustomRepositoryNotFoundError.js +1 -1
- package/browser/error/CustomRepositoryNotFoundError.js.map +1 -1
- package/browser/error/DataTypeNotSupportedError.js +1 -1
- package/browser/error/DataTypeNotSupportedError.js.map +1 -1
- package/browser/error/DriverOptionNotSetError.js +1 -1
- package/browser/error/DriverOptionNotSetError.js.map +1 -1
- package/browser/error/DriverPackageNotInstalledError.js +2 -2
- package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
- package/browser/error/EntityColumnNotFound.js +1 -1
- package/browser/error/EntityColumnNotFound.js.map +1 -1
- package/browser/error/EntityMetadataNotFoundError.js +1 -1
- package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
- package/browser/error/EntityNotFoundError.js +2 -2
- package/browser/error/EntityNotFoundError.js.map +1 -1
- package/browser/error/FindRelationsNotFoundError.js +2 -2
- package/browser/error/FindRelationsNotFoundError.js.map +1 -1
- package/browser/error/InitializedRelationError.js +1 -1
- package/browser/error/InitializedRelationError.js.map +1 -1
- package/browser/error/MissingDeleteDateColumnError.js +1 -1
- package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
- package/browser/error/MissingDriverError.js +2 -2
- package/browser/error/MissingDriverError.js.map +1 -1
- package/browser/error/MissingJoinColumnError.js +3 -3
- package/browser/error/MissingJoinColumnError.js.map +1 -1
- package/browser/error/MissingJoinTableError.js +3 -3
- package/browser/error/MissingJoinTableError.js.map +1 -1
- package/browser/error/MissingPrimaryColumnError.js +1 -1
- package/browser/error/MissingPrimaryColumnError.js.map +1 -1
- package/browser/error/MustBeEntityError.js +1 -1
- package/browser/error/MustBeEntityError.js.map +1 -1
- package/browser/error/NamingStrategyNotFoundError.js +2 -2
- package/browser/error/NamingStrategyNotFoundError.js.map +1 -1
- package/browser/error/NoConnectionForRepositoryError.js +1 -1
- package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
- package/browser/error/NoConnectionOptionError.js +2 -2
- package/browser/error/NoConnectionOptionError.js.map +1 -1
- package/browser/error/NoVersionOrUpdateDateColumnError.js +1 -1
- package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/browser/error/OptimisticLockVersionMismatchError.js +1 -1
- package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/browser/error/PrimaryColumnCannotBeNullableError.js +1 -1
- package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/browser/error/RepositoryNotFoundError.js +2 -2
- package/browser/error/RepositoryNotFoundError.js.map +1 -1
- package/browser/error/RepositoryNotTreeError.js +1 -1
- package/browser/error/RepositoryNotTreeError.js.map +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.js +1 -1
- package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/browser/error/SubjectWithoutIdentifierError.js +1 -1
- package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.js +1 -1
- package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/browser/error/UsingJoinColumnIsNotAllowedError.js +1 -1
- package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
- package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableIsNotAllowedError.js +2 -2
- package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
- package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/browser/find-options/FindOptionsUtils.js +6 -6
- package/browser/find-options/FindOptionsUtils.js.map +1 -1
- package/browser/logger/FileLogger.js +3 -3
- package/browser/logger/FileLogger.js.map +1 -1
- package/browser/metadata/EmbeddedMetadata.js +1 -1
- package/browser/metadata/EmbeddedMetadata.js.map +1 -1
- package/browser/metadata/IndexMetadata.js +1 -1
- package/browser/metadata/IndexMetadata.js.map +1 -1
- package/browser/metadata/RelationCountMetadata.js +1 -1
- package/browser/metadata/RelationCountMetadata.js.map +1 -1
- package/browser/metadata/RelationIdMetadata.js +1 -1
- package/browser/metadata/RelationIdMetadata.js.map +1 -1
- package/browser/metadata/UniqueMetadata.js +1 -1
- package/browser/metadata/UniqueMetadata.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataValidator.js +9 -9
- package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
- package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js +1 -1
- package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/browser/migration/MigrationExecutor.js +16 -16
- package/browser/migration/MigrationExecutor.js.map +1 -1
- package/browser/naming-strategy/DefaultNamingStrategy.js +11 -11
- package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.js +17 -17
- package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
- package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/browser/persistence/tree/NestedSetSubjectExecutor.js +44 -44
- package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/browser/platform/BrowserPlatformTools.js +9 -9
- package/browser/platform/BrowserPlatformTools.js.map +1 -1
- package/browser/platform/PlatformTools.js +1 -1
- package/browser/platform/PlatformTools.js.map +1 -1
- package/browser/query-builder/Alias.js +1 -1
- package/browser/query-builder/Alias.js.map +1 -1
- package/browser/query-builder/DeleteQueryBuilder.js +3 -3
- package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/InsertQueryBuilder.js +22 -22
- package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
- package/browser/query-builder/JoinAttribute.js +1 -1
- package/browser/query-builder/JoinAttribute.js.map +1 -1
- package/browser/query-builder/QueryBuilder.js +39 -39
- package/browser/query-builder/QueryBuilder.js.map +1 -1
- package/browser/query-builder/QueryExpressionMap.js +2 -2
- package/browser/query-builder/QueryExpressionMap.js.map +1 -1
- package/browser/query-builder/RelationLoader.js +7 -7
- package/browser/query-builder/RelationLoader.js.map +1 -1
- package/browser/query-builder/RelationQueryBuilder.js +3 -3
- package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
- package/browser/query-builder/RelationRemover.js +4 -4
- package/browser/query-builder/RelationRemover.js.map +1 -1
- package/browser/query-builder/RelationUpdater.js +1 -1
- package/browser/query-builder/RelationUpdater.js.map +1 -1
- package/browser/query-builder/SelectQueryBuilder.js +23 -23
- package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
- package/browser/query-builder/SoftDeleteQueryBuilder.js +4 -4
- package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/browser/query-builder/UpdateQueryBuilder.js +8 -8
- package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.js +1 -1
- package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.js +1 -1
- package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/browser/query-builder/relation-id/RelationIdLoader.js +4 -4
- package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/browser/query-runner/BaseQueryRunner.js +7 -7
- package/browser/query-runner/BaseQueryRunner.js.map +1 -1
- package/browser/repository/TreeRepository.js +7 -7
- package/browser/repository/TreeRepository.js.map +1 -1
- package/browser/schema-builder/RdbmsSchemaBuilder.js +19 -19
- package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/browser/subscriber/Broadcaster.js +1 -1
- package/browser/subscriber/Broadcaster.js.map +1 -1
- package/browser/util/DateUtils.js +1 -1
- package/browser/util/DateUtils.js.map +1 -1
- package/browser/util/DepGraph.js +7 -7
- package/browser/util/DepGraph.js.map +1 -1
- package/browser/util/DirectoryExportedClassesLoader.js +2 -2
- package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/browser/util/PathUtils.js +1 -1
- package/browser/util/PathUtils.js.map +1 -1
- package/cache/DbQueryResultCache.js +6 -6
- package/cache/DbQueryResultCache.js.map +1 -1
- package/cache/RedisQueryResultCache.js +2 -2
- package/cache/RedisQueryResultCache.js.map +1 -1
- package/cli.js +0 -0
- package/commands/CommandUtils.js +1 -1
- package/commands/CommandUtils.js.map +1 -1
- package/commands/EntityCreateCommand.js +3 -3
- package/commands/EntityCreateCommand.js.map +1 -1
- package/commands/InitCommand.js +6 -6
- package/commands/InitCommand.js.map +1 -1
- package/commands/MigrationCreateCommand.js +3 -3
- package/commands/MigrationCreateCommand.js.map +1 -1
- package/commands/MigrationGenerateCommand.js +8 -8
- package/commands/MigrationGenerateCommand.js.map +1 -1
- package/commands/SchemaLogCommand.js +1 -1
- package/commands/SchemaLogCommand.js.map +1 -1
- package/commands/SubscriberCreateCommand.js +2 -2
- package/commands/SubscriberCreateCommand.js.map +1 -1
- package/connection/Connection.js +2 -2
- package/connection/Connection.js.map +1 -1
- package/connection/ConnectionOptionsReader.js +2 -2
- package/connection/ConnectionOptionsReader.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
- package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +178 -171
- package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
- package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
- package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
- package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
- package/driver/capacitor/CapacitorDriver.js +1 -1
- package/driver/capacitor/CapacitorDriver.js.map +1 -1
- package/driver/capacitor/CapacitorQueryRunner.js +1 -1
- package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.js +6 -6
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +172 -166
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/cordova/CordovaQueryRunner.js +1 -1
- package/driver/cordova/CordovaQueryRunner.js.map +1 -1
- package/driver/expo/ExpoQueryRunner.js +3 -3
- package/driver/expo/ExpoQueryRunner.js.map +1 -1
- package/driver/mongodb/MongoDriver.js +4 -4
- package/driver/mongodb/MongoDriver.js.map +1 -1
- package/driver/mysql/MysqlDriver.js +11 -11
- package/driver/mysql/MysqlDriver.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +184 -177
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/nativescript/NativescriptQueryRunner.js +1 -1
- package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
- package/driver/oracle/OracleDriver.js +10 -10
- package/driver/oracle/OracleDriver.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +145 -138
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresDriver.js +18 -18
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +248 -242
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js +1 -1
- package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
- package/driver/sap/SapDriver.js +9 -9
- package/driver/sap/SapDriver.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +145 -139
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/sqlite/SqliteDriver.js +4 -4
- package/driver/sqlite/SqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
- package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +82 -76
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqljs/SqljsDriver.js +3 -3
- package/driver/sqljs/SqljsDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerDriver.js +11 -11
- package/driver/sqlserver/SqlServerDriver.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +226 -218
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/entity-manager/EntityManager.js +4 -4
- package/entity-manager/EntityManager.js.map +1 -1
- package/entity-manager/MongoEntityManager.js +1 -1
- package/entity-manager/MongoEntityManager.js.map +1 -1
- package/entity-schema/EntitySchemaEmbeddedError.js +2 -2
- package/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
- package/error/AlreadyHasActiveConnectionError.js +1 -1
- package/error/AlreadyHasActiveConnectionError.js.map +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js +1 -1
- package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
- package/error/CannotConnectAlreadyConnectedError.js +1 -1
- package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
- package/error/CannotCreateEntityIdMapError.js +1 -1
- package/error/CannotCreateEntityIdMapError.js.map +1 -1
- package/error/CannotDetermineEntityError.js +1 -1
- package/error/CannotDetermineEntityError.js.map +1 -1
- package/error/CannotExecuteNotConnectedError.js +1 -1
- package/error/CannotExecuteNotConnectedError.js.map +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js +1 -1
- package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
- package/error/CannotReflectMethodParameterTypeError.js +1 -1
- package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
- package/error/CircularRelationsError.js +1 -1
- package/error/CircularRelationsError.js.map +1 -1
- package/error/ColumnTypeUndefinedError.js +1 -1
- package/error/ColumnTypeUndefinedError.js.map +1 -1
- package/error/ConnectionIsNotSetError.js +1 -1
- package/error/ConnectionIsNotSetError.js.map +1 -1
- package/error/ConnectionNotFoundError.js +1 -1
- package/error/ConnectionNotFoundError.js.map +1 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
- package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
- package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
- package/error/CustomRepositoryNotFoundError.js +1 -1
- package/error/CustomRepositoryNotFoundError.js.map +1 -1
- package/error/DataTypeNotSupportedError.js +1 -1
- package/error/DataTypeNotSupportedError.js.map +1 -1
- package/error/DriverOptionNotSetError.js +1 -1
- package/error/DriverOptionNotSetError.js.map +1 -1
- package/error/DriverPackageNotInstalledError.js +2 -2
- package/error/DriverPackageNotInstalledError.js.map +1 -1
- package/error/EntityColumnNotFound.js +1 -1
- package/error/EntityColumnNotFound.js.map +1 -1
- package/error/EntityMetadataNotFoundError.js +1 -1
- package/error/EntityMetadataNotFoundError.js.map +1 -1
- package/error/EntityNotFoundError.js +2 -2
- package/error/EntityNotFoundError.js.map +1 -1
- package/error/FindRelationsNotFoundError.js +2 -2
- package/error/FindRelationsNotFoundError.js.map +1 -1
- package/error/InitializedRelationError.js +1 -1
- package/error/InitializedRelationError.js.map +1 -1
- package/error/MissingDeleteDateColumnError.js +1 -1
- package/error/MissingDeleteDateColumnError.js.map +1 -1
- package/error/MissingDriverError.js +2 -2
- package/error/MissingDriverError.js.map +1 -1
- package/error/MissingJoinColumnError.js +3 -3
- package/error/MissingJoinColumnError.js.map +1 -1
- package/error/MissingJoinTableError.js +3 -3
- package/error/MissingJoinTableError.js.map +1 -1
- package/error/MissingPrimaryColumnError.js +1 -1
- package/error/MissingPrimaryColumnError.js.map +1 -1
- package/error/MustBeEntityError.js +1 -1
- package/error/MustBeEntityError.js.map +1 -1
- package/error/NamingStrategyNotFoundError.js +2 -2
- package/error/NamingStrategyNotFoundError.js.map +1 -1
- package/error/NoConnectionForRepositoryError.js +1 -1
- package/error/NoConnectionForRepositoryError.js.map +1 -1
- package/error/NoConnectionOptionError.js +2 -2
- package/error/NoConnectionOptionError.js.map +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js +1 -1
- package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
- package/error/OptimisticLockVersionMismatchError.js +1 -1
- package/error/OptimisticLockVersionMismatchError.js.map +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js +1 -1
- package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
- package/error/RepositoryNotFoundError.js +2 -2
- package/error/RepositoryNotFoundError.js.map +1 -1
- package/error/RepositoryNotTreeError.js +1 -1
- package/error/RepositoryNotTreeError.js.map +1 -1
- package/error/SubjectRemovedAndUpdatedError.js +1 -1
- package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
- package/error/SubjectWithoutIdentifierError.js +1 -1
- package/error/SubjectWithoutIdentifierError.js.map +1 -1
- package/error/TreeRepositoryNotSupportedError.js +1 -1
- package/error/TreeRepositoryNotSupportedError.js.map +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.js +1 -1
- package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
- package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
- package/error/UsingJoinTableIsNotAllowedError.js +2 -2
- package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
- package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
- package/find-options/FindOptionsUtils.js +6 -6
- package/find-options/FindOptionsUtils.js.map +1 -1
- package/logger/FileLogger.js +3 -3
- package/logger/FileLogger.js.map +1 -1
- package/metadata/EmbeddedMetadata.js +1 -1
- package/metadata/EmbeddedMetadata.js.map +1 -1
- package/metadata/IndexMetadata.js +1 -1
- package/metadata/IndexMetadata.js.map +1 -1
- package/metadata/RelationCountMetadata.js +1 -1
- package/metadata/RelationCountMetadata.js.map +1 -1
- package/metadata/RelationIdMetadata.js +1 -1
- package/metadata/RelationIdMetadata.js.map +1 -1
- package/metadata/UniqueMetadata.js +1 -1
- package/metadata/UniqueMetadata.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +1 -1
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/EntityMetadataValidator.js +9 -9
- package/metadata-builder/EntityMetadataValidator.js.map +1 -1
- package/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
- package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.js +1 -1
- package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
- package/migration/MigrationExecutor.js +16 -16
- package/migration/MigrationExecutor.js.map +1 -1
- package/naming-strategy/DefaultNamingStrategy.js +11 -11
- package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
- package/package.json +260 -1
- package/persistence/tree/ClosureSubjectExecutor.js +17 -17
- package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
- package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
- package/persistence/tree/NestedSetSubjectExecutor.js +44 -44
- package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
- package/platform/PlatformTools.js +1 -1
- package/platform/PlatformTools.js.map +1 -1
- package/query-builder/Alias.js +1 -1
- package/query-builder/Alias.js.map +1 -1
- package/query-builder/DeleteQueryBuilder.js +3 -3
- package/query-builder/DeleteQueryBuilder.js.map +1 -1
- package/query-builder/InsertQueryBuilder.js +22 -22
- package/query-builder/InsertQueryBuilder.js.map +1 -1
- package/query-builder/JoinAttribute.js +1 -1
- package/query-builder/JoinAttribute.js.map +1 -1
- package/query-builder/QueryBuilder.js +39 -39
- package/query-builder/QueryBuilder.js.map +1 -1
- package/query-builder/QueryExpressionMap.js +2 -2
- package/query-builder/QueryExpressionMap.js.map +1 -1
- package/query-builder/RelationLoader.js +7 -7
- package/query-builder/RelationLoader.js.map +1 -1
- package/query-builder/RelationQueryBuilder.js +3 -3
- package/query-builder/RelationQueryBuilder.js.map +1 -1
- package/query-builder/RelationRemover.js +4 -4
- package/query-builder/RelationRemover.js.map +1 -1
- package/query-builder/RelationUpdater.js +1 -1
- package/query-builder/RelationUpdater.js.map +1 -1
- package/query-builder/SelectQueryBuilder.js +23 -23
- package/query-builder/SelectQueryBuilder.js.map +1 -1
- package/query-builder/SoftDeleteQueryBuilder.js +4 -4
- package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
- package/query-builder/UpdateQueryBuilder.js +8 -8
- package/query-builder/UpdateQueryBuilder.js.map +1 -1
- package/query-builder/relation-count/RelationCountAttribute.js +1 -1
- package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdAttribute.js +1 -1
- package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
- package/query-builder/relation-id/RelationIdLoader.js +4 -4
- package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
- package/query-runner/BaseQueryRunner.js +7 -7
- package/query-runner/BaseQueryRunner.js.map +1 -1
- package/repository/TreeRepository.js +7 -7
- package/repository/TreeRepository.js.map +1 -1
- package/schema-builder/RdbmsSchemaBuilder.js +19 -19
- package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
- package/subscriber/Broadcaster.js +1 -1
- package/subscriber/Broadcaster.js.map +1 -1
- package/util/DateUtils.js +1 -1
- package/util/DateUtils.js.map +1 -1
- package/util/DepGraph.js +7 -7
- package/util/DepGraph.js.map +1 -1
- package/util/DirectoryExportedClassesLoader.js +2 -2
- package/util/DirectoryExportedClassesLoader.js.map +1 -1
- package/util/PathUtils.js +1 -1
- package/util/PathUtils.js.map +1 -1
|
@@ -89,7 +89,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
89
89
|
_a.sent();
|
|
90
90
|
this.isTransactionActive = true;
|
|
91
91
|
if (!isolationLevel) return [3 /*break*/, 3];
|
|
92
|
-
return [4 /*yield*/, this.query("SET TRANSACTION ISOLATION LEVEL "
|
|
92
|
+
return [4 /*yield*/, this.query("SET TRANSACTION ISOLATION LEVEL ".concat(isolationLevel || ""))];
|
|
93
93
|
case 2:
|
|
94
94
|
_a.sent();
|
|
95
95
|
_a.label = 3;
|
|
@@ -277,7 +277,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
277
277
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
278
278
|
switch (_a.label) {
|
|
279
279
|
case 0:
|
|
280
|
-
query = database ? "SELECT * FROM \""
|
|
280
|
+
query = database ? "SELECT * FROM \"".concat(database, "\".\"SYS\".\"SCHEMAS\"") : "SELECT * FROM \"SYS\".\"SCHEMAS\"";
|
|
281
281
|
return [4 /*yield*/, this.query(query)];
|
|
282
282
|
case 1:
|
|
283
283
|
results = _a.sent();
|
|
@@ -367,7 +367,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
367
367
|
_a.schema = _b.sent();
|
|
368
368
|
_b.label = 2;
|
|
369
369
|
case 2:
|
|
370
|
-
sql = "SELECT * FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" = '"
|
|
370
|
+
sql = "SELECT * FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" = '".concat(parsedTableName.schema, "' AND \"TABLE_NAME\" = '").concat(parsedTableName.tableName, "'");
|
|
371
371
|
return [4 /*yield*/, this.query(sql)];
|
|
372
372
|
case 3:
|
|
373
373
|
result = _b.sent();
|
|
@@ -393,7 +393,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
393
393
|
_a.schema = _b.sent();
|
|
394
394
|
_b.label = 2;
|
|
395
395
|
case 2:
|
|
396
|
-
sql = "SELECT * FROM \"SYS\".\"TABLE_COLUMNS\" WHERE \"SCHEMA_NAME\" = "
|
|
396
|
+
sql = "SELECT * FROM \"SYS\".\"TABLE_COLUMNS\" WHERE \"SCHEMA_NAME\" = ".concat(parsedTableName.schema, " AND \"TABLE_NAME\" = ").concat(parsedTableName.tableName, " AND \"COLUMN_NAME\" = '").concat(columnName, "'");
|
|
397
397
|
return [4 /*yield*/, this.query(sql)];
|
|
398
398
|
case 3:
|
|
399
399
|
result = _b.sent();
|
|
@@ -434,15 +434,15 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
434
434
|
schema = schemaPath.indexOf(".") === -1 ? schemaPath : schemaPath.split(".")[1];
|
|
435
435
|
exist = false;
|
|
436
436
|
if (!ifNotExist) return [3 /*break*/, 2];
|
|
437
|
-
return [4 /*yield*/, this.query("SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = '"
|
|
437
|
+
return [4 /*yield*/, this.query("SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = '".concat(schema, "'"))];
|
|
438
438
|
case 1:
|
|
439
439
|
result = _a.sent();
|
|
440
440
|
exist = !!result.length;
|
|
441
441
|
_a.label = 2;
|
|
442
442
|
case 2:
|
|
443
443
|
if (!(!ifNotExist || (ifNotExist && !exist))) return [3 /*break*/, 4];
|
|
444
|
-
up = "CREATE SCHEMA \""
|
|
445
|
-
down = "DROP SCHEMA \""
|
|
444
|
+
up = "CREATE SCHEMA \"".concat(schema, "\"");
|
|
445
|
+
down = "DROP SCHEMA \"".concat(schema, "\" CASCADE");
|
|
446
446
|
return [4 /*yield*/, this.executeQueries(new Query_1.Query(up), new Query_1.Query(down))];
|
|
447
447
|
case 3:
|
|
448
448
|
_a.sent();
|
|
@@ -464,15 +464,15 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
464
464
|
schema = schemaPath.indexOf(".") === -1 ? schemaPath : schemaPath.split(".")[0];
|
|
465
465
|
exist = false;
|
|
466
466
|
if (!ifExist) return [3 /*break*/, 2];
|
|
467
|
-
return [4 /*yield*/, this.query("SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = '"
|
|
467
|
+
return [4 /*yield*/, this.query("SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = '".concat(schema, "'"))];
|
|
468
468
|
case 1:
|
|
469
469
|
result = _a.sent();
|
|
470
470
|
exist = !!result.length;
|
|
471
471
|
_a.label = 2;
|
|
472
472
|
case 2:
|
|
473
473
|
if (!(!ifExist || (ifExist && exist))) return [3 /*break*/, 4];
|
|
474
|
-
up = "DROP SCHEMA \""
|
|
475
|
-
down = "CREATE SCHEMA \""
|
|
474
|
+
up = "DROP SCHEMA \"".concat(schema, "\" ").concat(isCascade ? "CASCADE" : "");
|
|
475
|
+
down = "CREATE SCHEMA \"".concat(schema, "\"");
|
|
476
476
|
return [4 /*yield*/, this.executeQueries(new Query_1.Query(up), new Query_1.Query(down))];
|
|
477
477
|
case 3:
|
|
478
478
|
_a.sent();
|
|
@@ -667,16 +667,16 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
667
667
|
oldTable = _a;
|
|
668
668
|
newTable = oldTable.clone();
|
|
669
669
|
_b = this.driver.parseTableName(oldTable), schemaName = _b.schema, oldTableName = _b.tableName;
|
|
670
|
-
newTable.name = schemaName ? schemaName
|
|
670
|
+
newTable.name = schemaName ? "".concat(schemaName, ".").concat(newTableName) : newTableName;
|
|
671
671
|
// rename table
|
|
672
|
-
upQueries.push(new Query_1.Query("RENAME TABLE "
|
|
673
|
-
downQueries.push(new Query_1.Query("RENAME TABLE "
|
|
672
|
+
upQueries.push(new Query_1.Query("RENAME TABLE ".concat(this.escapePath(oldTable), " TO ").concat(this.escapePath(newTableName))));
|
|
673
|
+
downQueries.push(new Query_1.Query("RENAME TABLE ".concat(this.escapePath(newTable), " TO ").concat(this.escapePath(oldTableName))));
|
|
674
674
|
// drop old FK's. Foreign keys must be dropped before the primary keys are dropped
|
|
675
675
|
newTable.foreignKeys.forEach(function (foreignKey) {
|
|
676
676
|
upQueries.push(_this.dropForeignKeySql(newTable, foreignKey));
|
|
677
677
|
downQueries.push(_this.createForeignKeySql(newTable, foreignKey));
|
|
678
678
|
});
|
|
679
|
-
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '"
|
|
679
|
+
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '".concat(schemaName, "' AND \"REFERENCED_TABLE_NAME\" = '").concat(oldTableName, "'");
|
|
680
680
|
return [4 /*yield*/, this.query(referencedForeignKeySql)];
|
|
681
681
|
case 4:
|
|
682
682
|
dbForeignKeys = _c.sent();
|
|
@@ -685,7 +685,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
685
685
|
if (dbForeignKeys.length > 0) {
|
|
686
686
|
referencedForeignKeys = dbForeignKeys.map(function (dbForeignKey) {
|
|
687
687
|
var foreignKeys = dbForeignKeys.filter(function (dbFk) { return dbFk["CONSTRAINT_NAME"] === dbForeignKey["CONSTRAINT_NAME"]; });
|
|
688
|
-
referencedForeignKeyTableMapping.push({ tableName: dbForeignKey["SCHEMA_NAME"]
|
|
688
|
+
referencedForeignKeyTableMapping.push({ tableName: "".concat(dbForeignKey["SCHEMA_NAME"], ".").concat(dbForeignKey["TABLE_NAME"]), fkName: dbForeignKey["CONSTRAINT_NAME"] });
|
|
689
689
|
return new TableForeignKey_1.TableForeignKey({
|
|
690
690
|
name: dbForeignKey["CONSTRAINT_NAME"],
|
|
691
691
|
columnNames: foreignKeys.map(function (dbFk) { return dbFk["COLUMN_NAME"]; }),
|
|
@@ -708,15 +708,15 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
708
708
|
// rename primary key constraint
|
|
709
709
|
if (newTable.primaryColumns.length > 0) {
|
|
710
710
|
columnNames = newTable.primaryColumns.map(function (column) { return column.name; });
|
|
711
|
-
columnNamesString = columnNames.map(function (columnName) { return "\""
|
|
711
|
+
columnNamesString = columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
712
712
|
oldPkName = this.connection.namingStrategy.primaryKeyName(oldTable, columnNames);
|
|
713
713
|
newPkName = this.connection.namingStrategy.primaryKeyName(newTable, columnNames);
|
|
714
714
|
// drop old PK
|
|
715
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
716
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
715
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(newTable), " DROP CONSTRAINT \"").concat(oldPkName, "\"")));
|
|
716
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(newTable), " ADD CONSTRAINT \"").concat(oldPkName, "\" PRIMARY KEY (").concat(columnNamesString, ")")));
|
|
717
717
|
// create new PK
|
|
718
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
719
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
718
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(newTable), " ADD CONSTRAINT \"").concat(newPkName, "\" PRIMARY KEY (").concat(columnNamesString, ")")));
|
|
719
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(newTable), " DROP CONSTRAINT \"").concat(newPkName, "\"")));
|
|
720
720
|
}
|
|
721
721
|
// recreate foreign keys with new constraint names
|
|
722
722
|
newTable.foreignKeys.forEach(function (foreignKey) {
|
|
@@ -791,7 +791,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
791
791
|
if (!column.isPrimary) return [3 /*break*/, 8];
|
|
792
792
|
primaryColumns = clonedTable.primaryColumns;
|
|
793
793
|
if (!(primaryColumns.length > 0)) return [3 /*break*/, 7];
|
|
794
|
-
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '"
|
|
794
|
+
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '".concat(parsedTableName.schema, "' AND \"REFERENCED_TABLE_NAME\" = '").concat(parsedTableName.tableName, "'");
|
|
795
795
|
return [4 /*yield*/, this.query(referencedForeignKeySql)];
|
|
796
796
|
case 6:
|
|
797
797
|
dbForeignKeys_1 = _c.sent();
|
|
@@ -800,7 +800,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
800
800
|
if (dbForeignKeys_1.length > 0) {
|
|
801
801
|
referencedForeignKeys = dbForeignKeys_1.map(function (dbForeignKey) {
|
|
802
802
|
var foreignKeys = dbForeignKeys_1.filter(function (dbFk) { return dbFk["CONSTRAINT_NAME"] === dbForeignKey["CONSTRAINT_NAME"]; });
|
|
803
|
-
referencedForeignKeyTableMapping_1.push({ tableName: dbForeignKey["SCHEMA_NAME"]
|
|
803
|
+
referencedForeignKeyTableMapping_1.push({ tableName: "".concat(dbForeignKey["SCHEMA_NAME"], ".").concat(dbForeignKey["TABLE_NAME"]), fkName: dbForeignKey["CONSTRAINT_NAME"] });
|
|
804
804
|
return new TableForeignKey_1.TableForeignKey({
|
|
805
805
|
name: dbForeignKey["CONSTRAINT_NAME"],
|
|
806
806
|
columnNames: foreignKeys.map(function (dbFk) { return dbFk["COLUMN_NAME"]; }),
|
|
@@ -821,9 +821,9 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
821
821
|
});
|
|
822
822
|
}
|
|
823
823
|
pkName_1 = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
824
|
-
columnNames_1 = primaryColumns.map(function (column) { return "\""
|
|
825
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
826
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
824
|
+
columnNames_1 = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
825
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName_1, "\"")));
|
|
826
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName_1, "\" PRIMARY KEY (").concat(columnNames_1, ")")));
|
|
827
827
|
// restore referenced foreign keys
|
|
828
828
|
referencedForeignKeys.forEach(function (foreignKey) {
|
|
829
829
|
var mapping = referencedForeignKeyTableMapping_1.find(function (it) { return it.fkName === foreignKey.name; });
|
|
@@ -834,9 +834,9 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
834
834
|
case 7:
|
|
835
835
|
primaryColumns.push(column);
|
|
836
836
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
837
|
-
columnNames = primaryColumns.map(function (column) { return "\""
|
|
838
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
839
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
837
|
+
columnNames = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
838
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNames, ")")));
|
|
839
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
840
840
|
_c.label = 8;
|
|
841
841
|
case 8:
|
|
842
842
|
columnIndex = clonedTable.indices.find(function (index) { return index.columnNames.length === 1 && index.columnNames[0] === column.name; });
|
|
@@ -927,7 +927,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
927
927
|
table = _a;
|
|
928
928
|
oldColumn = oldTableColumnOrName instanceof TableColumn_1.TableColumn ? oldTableColumnOrName : table.columns.find(function (c) { return c.name === oldTableColumnOrName; });
|
|
929
929
|
if (!oldColumn)
|
|
930
|
-
throw new error_1.TypeORMError("Column \""
|
|
930
|
+
throw new error_1.TypeORMError("Column \"".concat(oldTableColumnOrName, "\" was not found in the \"").concat(table.name, "\" table."));
|
|
931
931
|
newColumn = undefined;
|
|
932
932
|
if (newTableColumnOrName instanceof TableColumn_1.TableColumn) {
|
|
933
933
|
newColumn = newTableColumnOrName;
|
|
@@ -970,7 +970,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
970
970
|
? oldTableColumnOrName
|
|
971
971
|
: table.columns.find(function (column) { return column.name === oldTableColumnOrName; });
|
|
972
972
|
if (!oldColumn)
|
|
973
|
-
throw new error_1.TypeORMError("Column \""
|
|
973
|
+
throw new error_1.TypeORMError("Column \"".concat(oldTableColumnOrName, "\" was not found in the \"").concat(table.name, "\" table."));
|
|
974
974
|
if (!((newColumn.isGenerated !== oldColumn.isGenerated && newColumn.generationStrategy !== "uuid") || newColumn.type !== oldColumn.type || newColumn.length !== oldColumn.length)) return [3 /*break*/, 6];
|
|
975
975
|
// SQL Server does not support changing of IDENTITY column, so we must drop column and recreate it again.
|
|
976
976
|
// Also, we recreate column if column type changed
|
|
@@ -988,8 +988,8 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
988
988
|
case 6:
|
|
989
989
|
if (newColumn.name !== oldColumn.name) {
|
|
990
990
|
// rename column
|
|
991
|
-
upQueries.push(new Query_1.Query("RENAME COLUMN "
|
|
992
|
-
downQueries.push(new Query_1.Query("RENAME COLUMN "
|
|
991
|
+
upQueries.push(new Query_1.Query("RENAME COLUMN ".concat(this.escapePath(table), ".\"").concat(oldColumn.name, "\" TO \"").concat(newColumn.name, "\"")));
|
|
992
|
+
downQueries.push(new Query_1.Query("RENAME COLUMN ".concat(this.escapePath(table), ".\"").concat(newColumn.name, "\" TO \"").concat(oldColumn.name, "\"")));
|
|
993
993
|
if (oldColumn.isPrimary === true) {
|
|
994
994
|
primaryColumns = clonedTable.primaryColumns;
|
|
995
995
|
columnNames = primaryColumns.map(function (column) { return column.name; });
|
|
@@ -997,14 +997,14 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
997
997
|
// replace old column name with new column name
|
|
998
998
|
columnNames.splice(columnNames.indexOf(oldColumn.name), 1);
|
|
999
999
|
columnNames.push(newColumn.name);
|
|
1000
|
-
columnNamesString = columnNames.map(function (columnName) { return "\""
|
|
1000
|
+
columnNamesString = columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
1001
1001
|
// drop old PK
|
|
1002
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1003
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1002
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " DROP CONSTRAINT \"").concat(oldPkName, "\"")));
|
|
1003
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " ADD CONSTRAINT \"").concat(oldPkName, "\" PRIMARY KEY (").concat(columnNamesString, ")")));
|
|
1004
1004
|
newPkName = this.connection.namingStrategy.primaryKeyName(clonedTable, columnNames);
|
|
1005
1005
|
// create new PK
|
|
1006
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1007
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1006
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " ADD CONSTRAINT \"").concat(newPkName, "\" PRIMARY KEY (").concat(columnNamesString, ")")));
|
|
1007
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " DROP CONSTRAINT \"").concat(newPkName, "\"")));
|
|
1008
1008
|
}
|
|
1009
1009
|
// rename index constraints
|
|
1010
1010
|
clonedTable.findColumnIndices(oldColumn).forEach(function (index) {
|
|
@@ -1053,26 +1053,26 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1053
1053
|
oldColumn.name = newColumn.name;
|
|
1054
1054
|
}
|
|
1055
1055
|
if (this.isColumnChanged(oldColumn, newColumn)) {
|
|
1056
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1057
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1056
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (").concat(this.buildCreateColumnSql(newColumn), ")")));
|
|
1057
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (").concat(this.buildCreateColumnSql(oldColumn), ")")));
|
|
1058
1058
|
}
|
|
1059
1059
|
if (newColumn.isPrimary !== oldColumn.isPrimary) {
|
|
1060
1060
|
primaryColumns = clonedTable.primaryColumns;
|
|
1061
1061
|
// if primary column state changed, we must always drop existed constraint.
|
|
1062
1062
|
if (primaryColumns.length > 0) {
|
|
1063
1063
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
1064
|
-
columnNames = primaryColumns.map(function (column) { return "\""
|
|
1065
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1066
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1064
|
+
columnNames = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
1065
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
1066
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNames, ")")));
|
|
1067
1067
|
}
|
|
1068
1068
|
if (newColumn.isPrimary === true) {
|
|
1069
1069
|
primaryColumns.push(newColumn);
|
|
1070
1070
|
column = clonedTable.columns.find(function (column) { return column.name === newColumn.name; });
|
|
1071
1071
|
column.isPrimary = true;
|
|
1072
1072
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
1073
|
-
columnNames = primaryColumns.map(function (column) { return "\""
|
|
1074
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1075
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1073
|
+
columnNames = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
1074
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNames, ")")));
|
|
1075
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
1076
1076
|
}
|
|
1077
1077
|
else {
|
|
1078
1078
|
primaryColumn = primaryColumns.find(function (c) { return c.name === newColumn.name; });
|
|
@@ -1082,9 +1082,9 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1082
1082
|
// if we have another primary keys, we must recreate constraint.
|
|
1083
1083
|
if (primaryColumns.length > 0) {
|
|
1084
1084
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
1085
|
-
columnNames = primaryColumns.map(function (column) { return "\""
|
|
1086
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1087
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1085
|
+
columnNames = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
1086
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNames, ")")));
|
|
1087
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
1088
1088
|
}
|
|
1089
1089
|
}
|
|
1090
1090
|
}
|
|
@@ -1116,17 +1116,17 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1116
1116
|
}
|
|
1117
1117
|
if (newColumn.default !== oldColumn.default) {
|
|
1118
1118
|
if (newColumn.default !== null && newColumn.default !== undefined) {
|
|
1119
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1119
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (\"").concat(newColumn.name, "\" ").concat(this.connection.driver.createFullType(newColumn), " DEFAULT ").concat(newColumn.default, ")")));
|
|
1120
1120
|
if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
1121
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1121
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (\"").concat(oldColumn.name, "\" ").concat(this.connection.driver.createFullType(oldColumn), " DEFAULT ").concat(oldColumn.default, ")")));
|
|
1122
1122
|
}
|
|
1123
1123
|
else {
|
|
1124
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1124
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (\"").concat(oldColumn.name, "\" ").concat(this.connection.driver.createFullType(oldColumn), " DEFAULT NULL)")));
|
|
1125
1125
|
}
|
|
1126
1126
|
}
|
|
1127
1127
|
else if (oldColumn.default !== null && oldColumn.default !== undefined) {
|
|
1128
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1129
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1128
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (\"").concat(newColumn.name, "\" ").concat(this.connection.driver.createFullType(newColumn), " DEFAULT NULL)")));
|
|
1129
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ALTER (\"").concat(oldColumn.name, "\" ").concat(this.connection.driver.createFullType(oldColumn), " DEFAULT ").concat(oldColumn.default, ")")));
|
|
1130
1130
|
}
|
|
1131
1131
|
}
|
|
1132
1132
|
return [4 /*yield*/, this.executeQueries(upQueries, downQueries)];
|
|
@@ -1207,12 +1207,12 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1207
1207
|
case 5:
|
|
1208
1208
|
column = columnOrName instanceof TableColumn_1.TableColumn ? columnOrName : table.findColumnByName(columnOrName);
|
|
1209
1209
|
if (!column)
|
|
1210
|
-
throw new error_1.TypeORMError("Column \""
|
|
1210
|
+
throw new error_1.TypeORMError("Column \"".concat(columnOrName, "\" was not found in table \"").concat(table.name, "\""));
|
|
1211
1211
|
clonedTable = table.clone();
|
|
1212
1212
|
upQueries = [];
|
|
1213
1213
|
downQueries = [];
|
|
1214
1214
|
if (!column.isPrimary) return [3 /*break*/, 7];
|
|
1215
|
-
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '"
|
|
1215
|
+
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '".concat(parsedTableName.schema, "' AND \"REFERENCED_TABLE_NAME\" = '").concat(parsedTableName.tableName, "'");
|
|
1216
1216
|
return [4 /*yield*/, this.query(referencedForeignKeySql)];
|
|
1217
1217
|
case 6:
|
|
1218
1218
|
dbForeignKeys_2 = _c.sent();
|
|
@@ -1221,7 +1221,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1221
1221
|
if (dbForeignKeys_2.length > 0) {
|
|
1222
1222
|
referencedForeignKeys = dbForeignKeys_2.map(function (dbForeignKey) {
|
|
1223
1223
|
var foreignKeys = dbForeignKeys_2.filter(function (dbFk) { return dbFk["CONSTRAINT_NAME"] === dbForeignKey["CONSTRAINT_NAME"]; });
|
|
1224
|
-
referencedForeignKeyTableMapping_2.push({ tableName: dbForeignKey["SCHEMA_NAME"]
|
|
1224
|
+
referencedForeignKeyTableMapping_2.push({ tableName: "".concat(dbForeignKey["SCHEMA_NAME"], ".").concat(dbForeignKey["TABLE_NAME"]), fkName: dbForeignKey["CONSTRAINT_NAME"] });
|
|
1225
1225
|
return new TableForeignKey_1.TableForeignKey({
|
|
1226
1226
|
name: dbForeignKey["CONSTRAINT_NAME"],
|
|
1227
1227
|
columnNames: foreignKeys.map(function (dbFk) { return dbFk["COLUMN_NAME"]; }),
|
|
@@ -1242,17 +1242,17 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1242
1242
|
});
|
|
1243
1243
|
}
|
|
1244
1244
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map(function (column) { return column.name; }));
|
|
1245
|
-
columnNames = clonedTable.primaryColumns.map(function (primaryColumn) { return "\""
|
|
1246
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1247
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1245
|
+
columnNames = clonedTable.primaryColumns.map(function (primaryColumn) { return "\"".concat(primaryColumn.name, "\""); }).join(", ");
|
|
1246
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
1247
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNames, ")")));
|
|
1248
1248
|
tableColumn = clonedTable.findColumnByName(column.name);
|
|
1249
1249
|
tableColumn.isPrimary = false;
|
|
1250
1250
|
// if primary key have multiple columns, we must recreate it without dropped column
|
|
1251
1251
|
if (clonedTable.primaryColumns.length > 0) {
|
|
1252
1252
|
pkName_2 = this.connection.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map(function (column) { return column.name; }));
|
|
1253
|
-
columnNames_2 = clonedTable.primaryColumns.map(function (primaryColumn) { return "\""
|
|
1254
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1255
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1253
|
+
columnNames_2 = clonedTable.primaryColumns.map(function (primaryColumn) { return "\"".concat(primaryColumn.name, "\""); }).join(", ");
|
|
1254
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " ADD CONSTRAINT \"").concat(pkName_2, "\" PRIMARY KEY (").concat(columnNames_2, ")")));
|
|
1255
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(clonedTable), " DROP CONSTRAINT \"").concat(pkName_2, "\"")));
|
|
1256
1256
|
}
|
|
1257
1257
|
// restore referenced foreign keys
|
|
1258
1258
|
referencedForeignKeys.forEach(function (foreignKey) {
|
|
@@ -1274,14 +1274,14 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1274
1274
|
if (foundUnique) {
|
|
1275
1275
|
clonedTable.uniques.splice(clonedTable.uniques.indexOf(foundUnique), 1);
|
|
1276
1276
|
upQueries.push(this.dropIndexSql(table, uniqueName_1));
|
|
1277
|
-
downQueries.push(new Query_1.Query("CREATE UNIQUE INDEX \""
|
|
1277
|
+
downQueries.push(new Query_1.Query("CREATE UNIQUE INDEX \"".concat(uniqueName_1, "\" ON ").concat(this.escapePath(table), " (\"").concat(column.name, "\")")));
|
|
1278
1278
|
}
|
|
1279
1279
|
indexName_1 = this.connection.namingStrategy.indexName(table, [column.name]);
|
|
1280
1280
|
foundIndex = clonedTable.indices.find(function (index) { return index.name === indexName_1; });
|
|
1281
1281
|
if (foundIndex) {
|
|
1282
1282
|
clonedTable.indices.splice(clonedTable.indices.indexOf(foundIndex), 1);
|
|
1283
1283
|
upQueries.push(this.dropIndexSql(table, indexName_1));
|
|
1284
|
-
downQueries.push(new Query_1.Query("CREATE UNIQUE INDEX \""
|
|
1284
|
+
downQueries.push(new Query_1.Query("CREATE UNIQUE INDEX \"".concat(indexName_1, "\" ON ").concat(this.escapePath(table), " (\"").concat(column.name, "\")")));
|
|
1285
1285
|
}
|
|
1286
1286
|
}
|
|
1287
1287
|
columnCheck = clonedTable.checks.find(function (check) { return !!check.columnNames && check.columnNames.length === 1 && check.columnNames[0] === column.name; });
|
|
@@ -1407,7 +1407,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1407
1407
|
columnNames = columns.map(function (column) { return column.name; });
|
|
1408
1408
|
upQueries = [];
|
|
1409
1409
|
downQueries = [];
|
|
1410
|
-
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '"
|
|
1410
|
+
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '".concat(parsedTableName.schema, "' AND \"REFERENCED_TABLE_NAME\" = '").concat(parsedTableName.tableName, "'");
|
|
1411
1411
|
return [4 /*yield*/, this.query(referencedForeignKeySql)];
|
|
1412
1412
|
case 6:
|
|
1413
1413
|
dbForeignKeys = _c.sent();
|
|
@@ -1416,7 +1416,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1416
1416
|
if (dbForeignKeys.length > 0) {
|
|
1417
1417
|
referencedForeignKeys = dbForeignKeys.map(function (dbForeignKey) {
|
|
1418
1418
|
var foreignKeys = dbForeignKeys.filter(function (dbFk) { return dbFk["CONSTRAINT_NAME"] === dbForeignKey["CONSTRAINT_NAME"]; });
|
|
1419
|
-
referencedForeignKeyTableMapping.push({ tableName: dbForeignKey["SCHEMA_NAME"]
|
|
1419
|
+
referencedForeignKeyTableMapping.push({ tableName: "".concat(dbForeignKey["SCHEMA_NAME"], ".").concat(dbForeignKey["TABLE_NAME"]), fkName: dbForeignKey["CONSTRAINT_NAME"] });
|
|
1420
1420
|
return new TableForeignKey_1.TableForeignKey({
|
|
1421
1421
|
name: dbForeignKey["CONSTRAINT_NAME"],
|
|
1422
1422
|
columnNames: foreignKeys.map(function (dbFk) { return dbFk["COLUMN_NAME"]; }),
|
|
@@ -1439,18 +1439,18 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1439
1439
|
primaryColumns = clonedTable.primaryColumns;
|
|
1440
1440
|
if (primaryColumns.length > 0) {
|
|
1441
1441
|
pkName_3 = this.connection.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map(function (column) { return column.name; }));
|
|
1442
|
-
columnNamesString_1 = primaryColumns.map(function (column) { return "\""
|
|
1443
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1444
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1442
|
+
columnNamesString_1 = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
1443
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName_3, "\"")));
|
|
1444
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName_3, "\" PRIMARY KEY (").concat(columnNamesString_1, ")")));
|
|
1445
1445
|
}
|
|
1446
1446
|
// update columns in table.
|
|
1447
1447
|
clonedTable.columns
|
|
1448
1448
|
.filter(function (column) { return columnNames.indexOf(column.name) !== -1; })
|
|
1449
1449
|
.forEach(function (column) { return column.isPrimary = true; });
|
|
1450
1450
|
pkName = this.connection.namingStrategy.primaryKeyName(clonedTable, columnNames);
|
|
1451
|
-
columnNamesString = columnNames.map(function (columnName) { return "\""
|
|
1452
|
-
upQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1453
|
-
downQueries.push(new Query_1.Query("ALTER TABLE "
|
|
1451
|
+
columnNamesString = columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
1452
|
+
upQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(pkName, "\" PRIMARY KEY (").concat(columnNamesString, ")")));
|
|
1453
|
+
downQueries.push(new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(pkName, "\"")));
|
|
1454
1454
|
// restore referenced foreign keys
|
|
1455
1455
|
referencedForeignKeys.forEach(function (foreignKey) {
|
|
1456
1456
|
var mapping = referencedForeignKeyTableMapping.find(function (it) { return it.fkName === foreignKey.name; });
|
|
@@ -1495,7 +1495,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1495
1495
|
case 5:
|
|
1496
1496
|
upQueries = [];
|
|
1497
1497
|
downQueries = [];
|
|
1498
|
-
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '"
|
|
1498
|
+
referencedForeignKeySql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '".concat(parsedTableName.schema, "' AND \"REFERENCED_TABLE_NAME\" = '").concat(parsedTableName.tableName, "'");
|
|
1499
1499
|
return [4 /*yield*/, this.query(referencedForeignKeySql)];
|
|
1500
1500
|
case 6:
|
|
1501
1501
|
dbForeignKeys = _c.sent();
|
|
@@ -1504,7 +1504,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1504
1504
|
if (dbForeignKeys.length > 0) {
|
|
1505
1505
|
referencedForeignKeys = dbForeignKeys.map(function (dbForeignKey) {
|
|
1506
1506
|
var foreignKeys = dbForeignKeys.filter(function (dbFk) { return dbFk["CONSTRAINT_NAME"] === dbForeignKey["CONSTRAINT_NAME"]; });
|
|
1507
|
-
referencedForeignKeyTableMapping.push({ tableName: dbForeignKey["SCHEMA_NAME"]
|
|
1507
|
+
referencedForeignKeyTableMapping.push({ tableName: "".concat(dbForeignKey["SCHEMA_NAME"], ".").concat(dbForeignKey["TABLE_NAME"]), fkName: dbForeignKey["CONSTRAINT_NAME"] });
|
|
1508
1508
|
return new TableForeignKey_1.TableForeignKey({
|
|
1509
1509
|
name: dbForeignKey["CONSTRAINT_NAME"],
|
|
1510
1510
|
columnNames: foreignKeys.map(function (dbFk) { return dbFk["COLUMN_NAME"]; }),
|
|
@@ -1654,7 +1654,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1654
1654
|
table = _a;
|
|
1655
1655
|
checkConstraint = checkOrName instanceof TableCheck_1.TableCheck ? checkOrName : table.checks.find(function (c) { return c.name === checkOrName; });
|
|
1656
1656
|
if (!checkConstraint)
|
|
1657
|
-
throw new error_1.TypeORMError("Supplied check constraint was not found in table "
|
|
1657
|
+
throw new error_1.TypeORMError("Supplied check constraint was not found in table ".concat(table.name));
|
|
1658
1658
|
up = this.dropCheckConstraintSql(table, checkConstraint);
|
|
1659
1659
|
down = this.createCheckConstraintSql(table, checkConstraint);
|
|
1660
1660
|
return [4 /*yield*/, this.executeQueries(up, down)];
|
|
@@ -1796,7 +1796,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1796
1796
|
table = _a;
|
|
1797
1797
|
foreignKey = foreignKeyOrName instanceof TableForeignKey_1.TableForeignKey ? foreignKeyOrName : table.foreignKeys.find(function (fk) { return fk.name === foreignKeyOrName; });
|
|
1798
1798
|
if (!foreignKey)
|
|
1799
|
-
throw new error_1.TypeORMError("Supplied foreign key was not found in table "
|
|
1799
|
+
throw new error_1.TypeORMError("Supplied foreign key was not found in table ".concat(table.name));
|
|
1800
1800
|
up = this.dropForeignKeySql(table, foreignKey);
|
|
1801
1801
|
down = this.createForeignKeySql(table, foreignKey);
|
|
1802
1802
|
return [4 /*yield*/, this.executeQueries(up, down)];
|
|
@@ -1898,7 +1898,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1898
1898
|
table = _a;
|
|
1899
1899
|
index = indexOrName instanceof TableIndex_1.TableIndex ? indexOrName : table.indices.find(function (i) { return i.name === indexOrName; });
|
|
1900
1900
|
if (!index)
|
|
1901
|
-
throw new error_1.TypeORMError("Supplied index "
|
|
1901
|
+
throw new error_1.TypeORMError("Supplied index ".concat(indexOrName, " was not found in table ").concat(table.name));
|
|
1902
1902
|
up = this.dropIndexSql(table, index);
|
|
1903
1903
|
down = this.createIndexSql(table, index);
|
|
1904
1904
|
return [4 /*yield*/, this.executeQueries(up, down)];
|
|
@@ -1937,7 +1937,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1937
1937
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1938
1938
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
1939
1939
|
switch (_a.label) {
|
|
1940
|
-
case 0: return [4 /*yield*/, this.query("TRUNCATE TABLE "
|
|
1940
|
+
case 0: return [4 /*yield*/, this.query("TRUNCATE TABLE ".concat(this.escapePath(tablePath)))];
|
|
1941
1941
|
case 1:
|
|
1942
1942
|
_a.sent();
|
|
1943
1943
|
return [2 /*return*/];
|
|
@@ -1950,7 +1950,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1950
1950
|
*/
|
|
1951
1951
|
SapQueryRunner.prototype.clearDatabase = function () {
|
|
1952
1952
|
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
1953
|
-
var schemas, schemaNamesString, selectTableDropsQuery, dropTableQueries, error_2, rollbackError_1;
|
|
1953
|
+
var schemas, schemaNamesString, isAnotherTransactionActive, selectTableDropsQuery, dropTableQueries, error_2, rollbackError_1;
|
|
1954
1954
|
var _this = this;
|
|
1955
1955
|
return (0, tslib_1.__generator)(this, function (_a) {
|
|
1956
1956
|
switch (_a.label) {
|
|
@@ -1967,37 +1967,43 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
1967
1967
|
schemaNamesString = schemas.map(function (name) {
|
|
1968
1968
|
return name === "current_schema" ? name : "'" + name + "'";
|
|
1969
1969
|
}).join(", ");
|
|
1970
|
+
isAnotherTransactionActive = this.isTransactionActive;
|
|
1971
|
+
if (!!isAnotherTransactionActive) return [3 /*break*/, 2];
|
|
1970
1972
|
return [4 /*yield*/, this.startTransaction()];
|
|
1971
1973
|
case 1:
|
|
1972
1974
|
_a.sent();
|
|
1973
1975
|
_a.label = 2;
|
|
1974
1976
|
case 2:
|
|
1975
|
-
_a.trys.push([2,
|
|
1976
|
-
selectTableDropsQuery = "SELECT 'DROP TABLE \"' || schema_name || '\".\"' || table_name || '\" CASCADE;' as \"query\" FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" IN ("
|
|
1977
|
+
_a.trys.push([2, 7, , 13]);
|
|
1978
|
+
selectTableDropsQuery = "SELECT 'DROP TABLE \"' || schema_name || '\".\"' || table_name || '\" CASCADE;' as \"query\" FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" IN (".concat(schemaNamesString, ") AND \"TABLE_NAME\" NOT IN ('SYS_AFL_GENERATOR_PARAMETERS') AND \"IS_COLUMN_TABLE\" = 'TRUE'");
|
|
1977
1979
|
return [4 /*yield*/, this.query(selectTableDropsQuery)];
|
|
1978
1980
|
case 3:
|
|
1979
1981
|
dropTableQueries = _a.sent();
|
|
1980
1982
|
return [4 /*yield*/, Promise.all(dropTableQueries.map(function (q) { return _this.query(q["query"]); }))];
|
|
1981
1983
|
case 4:
|
|
1982
1984
|
_a.sent();
|
|
1985
|
+
if (!!isAnotherTransactionActive) return [3 /*break*/, 6];
|
|
1983
1986
|
return [4 /*yield*/, this.commitTransaction()];
|
|
1984
1987
|
case 5:
|
|
1985
1988
|
_a.sent();
|
|
1986
|
-
|
|
1987
|
-
case 6:
|
|
1988
|
-
error_2 = _a.sent();
|
|
1989
|
-
_a.label = 7;
|
|
1989
|
+
_a.label = 6;
|
|
1990
|
+
case 6: return [3 /*break*/, 13];
|
|
1990
1991
|
case 7:
|
|
1991
|
-
_a.
|
|
1992
|
-
|
|
1992
|
+
error_2 = _a.sent();
|
|
1993
|
+
_a.label = 8;
|
|
1993
1994
|
case 8:
|
|
1994
|
-
_a.
|
|
1995
|
-
return [3 /*break*/, 10];
|
|
1995
|
+
_a.trys.push([8, 11, , 12]);
|
|
1996
|
+
if (!!isAnotherTransactionActive) return [3 /*break*/, 10];
|
|
1997
|
+
return [4 /*yield*/, this.rollbackTransaction()];
|
|
1996
1998
|
case 9:
|
|
1999
|
+
_a.sent();
|
|
2000
|
+
_a.label = 10;
|
|
2001
|
+
case 10: return [3 /*break*/, 12];
|
|
2002
|
+
case 11:
|
|
1997
2003
|
rollbackError_1 = _a.sent();
|
|
1998
|
-
return [3 /*break*/,
|
|
1999
|
-
case
|
|
2000
|
-
case
|
|
2004
|
+
return [3 /*break*/, 12];
|
|
2005
|
+
case 12: throw error_2;
|
|
2006
|
+
case 13: return [2 /*return*/];
|
|
2001
2007
|
}
|
|
2002
2008
|
});
|
|
2003
2009
|
});
|
|
@@ -2031,9 +2037,9 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2031
2037
|
if (!schema) {
|
|
2032
2038
|
schema = currentSchema;
|
|
2033
2039
|
}
|
|
2034
|
-
return "(\"t\".\"schema\" = '"
|
|
2040
|
+
return "(\"t\".\"schema\" = '".concat(schema, "' AND \"t\".\"name\" = '").concat(name, "')");
|
|
2035
2041
|
}).join(" OR ");
|
|
2036
|
-
query = "SELECT \"t\".* FROM "
|
|
2042
|
+
query = "SELECT \"t\".* FROM ".concat(this.escapePath(this.getTypeormMetadataTableName()), " \"t\" WHERE \"t\".\"type\" = '").concat(MetadataTableType_1.MetadataTableType.VIEW, "' ").concat(viewsCondition ? "AND (".concat(viewsCondition, ")") : "");
|
|
2037
2043
|
return [4 /*yield*/, this.query(query)];
|
|
2038
2044
|
case 4:
|
|
2039
2045
|
dbViews = _a.sent();
|
|
@@ -2086,7 +2092,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2086
2092
|
name = schema;
|
|
2087
2093
|
schema = _this.driver.options.schema || currentSchema;
|
|
2088
2094
|
}
|
|
2089
|
-
return "(\"SCHEMA_NAME\" = '"
|
|
2095
|
+
return "(\"SCHEMA_NAME\" = '".concat(schema, "' AND \"TABLE_NAME\" = '").concat(name, "')");
|
|
2090
2096
|
}).join(" OR ");
|
|
2091
2097
|
tablesSql = "SELECT \"SCHEMA_NAME\", \"TABLE_NAME\" FROM \"SYS\".\"TABLES\" WHERE " + tablesCondition;
|
|
2092
2098
|
_f = (_e = dbTables.push).apply;
|
|
@@ -2102,26 +2108,26 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2102
2108
|
return [2 /*return*/, []];
|
|
2103
2109
|
columnsCondition = dbTables.map(function (_a) {
|
|
2104
2110
|
var SCHEMA_NAME = _a.SCHEMA_NAME, TABLE_NAME = _a.TABLE_NAME;
|
|
2105
|
-
return "(\"SCHEMA_NAME\" = '"
|
|
2111
|
+
return "(\"SCHEMA_NAME\" = '".concat(SCHEMA_NAME, "' AND \"TABLE_NAME\" = '").concat(TABLE_NAME, "')");
|
|
2106
2112
|
}).join(" OR ");
|
|
2107
2113
|
columnsSql = "SELECT * FROM \"SYS\".\"TABLE_COLUMNS\" WHERE " + columnsCondition + " ORDER BY \"POSITION\"";
|
|
2108
2114
|
constraintsCondition = dbTables.map(function (_a) {
|
|
2109
2115
|
var SCHEMA_NAME = _a.SCHEMA_NAME, TABLE_NAME = _a.TABLE_NAME;
|
|
2110
|
-
return "(\"SCHEMA_NAME\" = '"
|
|
2116
|
+
return "(\"SCHEMA_NAME\" = '".concat(SCHEMA_NAME, "' AND \"TABLE_NAME\" = '").concat(TABLE_NAME, "')");
|
|
2111
2117
|
}).join(" OR ");
|
|
2112
|
-
constraintsSql = "SELECT * FROM \"SYS\".\"CONSTRAINTS\" WHERE ("
|
|
2118
|
+
constraintsSql = "SELECT * FROM \"SYS\".\"CONSTRAINTS\" WHERE (".concat(constraintsCondition, ") ORDER BY \"POSITION\"");
|
|
2113
2119
|
indicesCondition = dbTables.map(function (_a) {
|
|
2114
2120
|
var SCHEMA_NAME = _a.SCHEMA_NAME, TABLE_NAME = _a.TABLE_NAME;
|
|
2115
|
-
return "(\"I\".\"SCHEMA_NAME\" = '"
|
|
2121
|
+
return "(\"I\".\"SCHEMA_NAME\" = '".concat(SCHEMA_NAME, "' AND \"I\".\"TABLE_NAME\" = '").concat(TABLE_NAME, "')");
|
|
2116
2122
|
}).join(" OR ");
|
|
2117
2123
|
indicesSql = "SELECT \"I\".\"INDEX_TYPE\", \"I\".\"SCHEMA_NAME\", \"I\".\"TABLE_NAME\", \"I\".\"INDEX_NAME\", \"IC\".\"COLUMN_NAME\", \"I\".\"CONSTRAINT\" " +
|
|
2118
2124
|
"FROM \"SYS\".\"INDEXES\" \"I\" INNER JOIN \"SYS\".\"INDEX_COLUMNS\" \"IC\" ON \"IC\".\"INDEX_OID\" = \"I\".\"INDEX_OID\" " +
|
|
2119
|
-
|
|
2125
|
+
"WHERE (".concat(indicesCondition, ") AND (\"I\".\"CONSTRAINT\" IS NULL OR \"I\".\"CONSTRAINT\" != 'PRIMARY KEY') AND \"I\".\"INDEX_NAME\" NOT LIKE '%_SYS_FULLTEXT_%' ORDER BY \"IC\".\"POSITION\"");
|
|
2120
2126
|
foreignKeysCondition = dbTables.map(function (_a) {
|
|
2121
2127
|
var SCHEMA_NAME = _a.SCHEMA_NAME, TABLE_NAME = _a.TABLE_NAME;
|
|
2122
|
-
return "(\"SCHEMA_NAME\" = '"
|
|
2128
|
+
return "(\"SCHEMA_NAME\" = '".concat(SCHEMA_NAME, "' AND \"TABLE_NAME\" = '").concat(TABLE_NAME, "')");
|
|
2123
2129
|
}).join(" OR ");
|
|
2124
|
-
foreignKeysSql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE ("
|
|
2130
|
+
foreignKeysSql = "SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE (".concat(foreignKeysCondition, ") ORDER BY \"POSITION\"");
|
|
2125
2131
|
return [4 /*yield*/, Promise.all([
|
|
2126
2132
|
this.query(columnsSql),
|
|
2127
2133
|
this.query(constraintsSql),
|
|
@@ -2216,7 +2222,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2216
2222
|
else {
|
|
2217
2223
|
if (tableColumn.type === "char" || tableColumn.type === "nchar" || tableColumn.type === "varchar" ||
|
|
2218
2224
|
tableColumn.type === "nvarchar" || tableColumn.type === "alphanum" || tableColumn.type === "shorttext") {
|
|
2219
|
-
tableColumn.default = "'"
|
|
2225
|
+
tableColumn.default = "'".concat(dbColumn["DEFAULT_VALUE"], "'");
|
|
2220
2226
|
}
|
|
2221
2227
|
else if (tableColumn.type === "boolean") {
|
|
2222
2228
|
tableColumn.default = dbColumn["DEFAULT_VALUE"] === "1" ? "true" : "false";
|
|
@@ -2297,7 +2303,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2297
2303
|
SapQueryRunner.prototype.createTableSql = function (table, createForeignKeys) {
|
|
2298
2304
|
var _this = this;
|
|
2299
2305
|
var columnDefinitions = table.columns.map(function (column) { return _this.buildCreateColumnSql(column); }).join(", ");
|
|
2300
|
-
var sql = "CREATE TABLE "
|
|
2306
|
+
var sql = "CREATE TABLE ".concat(this.escapePath(table), " (").concat(columnDefinitions);
|
|
2301
2307
|
// we create unique indexes instead of unique constraints, because SAP HANA does not have unique constraints.
|
|
2302
2308
|
// if we mark column as Unique, it means that we create UNIQUE INDEX.
|
|
2303
2309
|
table.columns
|
|
@@ -2332,38 +2338,38 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2332
2338
|
if (table.checks.length > 0) {
|
|
2333
2339
|
var checksSql = table.checks.map(function (check) {
|
|
2334
2340
|
var checkName = check.name ? check.name : _this.connection.namingStrategy.checkConstraintName(table, check.expression);
|
|
2335
|
-
return "CONSTRAINT \""
|
|
2341
|
+
return "CONSTRAINT \"".concat(checkName, "\" CHECK (").concat(check.expression, ")");
|
|
2336
2342
|
}).join(", ");
|
|
2337
|
-
sql += ", "
|
|
2343
|
+
sql += ", ".concat(checksSql);
|
|
2338
2344
|
}
|
|
2339
2345
|
if (table.foreignKeys.length > 0 && createForeignKeys) {
|
|
2340
2346
|
var foreignKeysSql = table.foreignKeys.map(function (fk) {
|
|
2341
|
-
var columnNames = fk.columnNames.map(function (columnName) { return "\""
|
|
2347
|
+
var columnNames = fk.columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
2342
2348
|
if (!fk.name)
|
|
2343
2349
|
fk.name = _this.connection.namingStrategy.foreignKeyName(table, fk.columnNames, _this.getTablePath(fk), fk.referencedColumnNames);
|
|
2344
|
-
var referencedColumnNames = fk.referencedColumnNames.map(function (columnName) { return "\""
|
|
2345
|
-
var constraint = "CONSTRAINT \""
|
|
2350
|
+
var referencedColumnNames = fk.referencedColumnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
2351
|
+
var constraint = "CONSTRAINT \"".concat(fk.name, "\" FOREIGN KEY (").concat(columnNames, ") REFERENCES ").concat(_this.escapePath(_this.getTablePath(fk)), " (").concat(referencedColumnNames, ")");
|
|
2346
2352
|
// SAP HANA does not have "NO ACTION" option for FK's
|
|
2347
2353
|
if (fk.onDelete) {
|
|
2348
2354
|
var onDelete = fk.onDelete === "NO ACTION" ? "RESTRICT" : fk.onDelete;
|
|
2349
|
-
constraint += " ON DELETE "
|
|
2355
|
+
constraint += " ON DELETE ".concat(onDelete);
|
|
2350
2356
|
}
|
|
2351
2357
|
if (fk.onUpdate) {
|
|
2352
2358
|
var onUpdate = fk.onUpdate === "NO ACTION" ? "RESTRICT" : fk.onUpdate;
|
|
2353
|
-
constraint += " ON UPDATE "
|
|
2359
|
+
constraint += " ON UPDATE ".concat(onUpdate);
|
|
2354
2360
|
}
|
|
2355
2361
|
if (fk.deferrable) {
|
|
2356
|
-
constraint += " "
|
|
2362
|
+
constraint += " ".concat(fk.deferrable);
|
|
2357
2363
|
}
|
|
2358
2364
|
return constraint;
|
|
2359
2365
|
}).join(", ");
|
|
2360
|
-
sql += ", "
|
|
2366
|
+
sql += ", ".concat(foreignKeysSql);
|
|
2361
2367
|
}
|
|
2362
2368
|
var primaryColumns = table.columns.filter(function (column) { return column.isPrimary; });
|
|
2363
2369
|
if (primaryColumns.length > 0) {
|
|
2364
2370
|
var primaryKeyName = this.connection.namingStrategy.primaryKeyName(table, primaryColumns.map(function (column) { return column.name; }));
|
|
2365
|
-
var columnNames = primaryColumns.map(function (column) { return "\""
|
|
2366
|
-
sql += ", CONSTRAINT \""
|
|
2371
|
+
var columnNames = primaryColumns.map(function (column) { return "\"".concat(column.name, "\""); }).join(", ");
|
|
2372
|
+
sql += ", CONSTRAINT \"".concat(primaryKeyName, "\" PRIMARY KEY (").concat(columnNames, ")");
|
|
2367
2373
|
}
|
|
2368
2374
|
sql += ")";
|
|
2369
2375
|
return new Query_1.Query(sql);
|
|
@@ -2372,15 +2378,15 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2372
2378
|
* Builds drop table sql.
|
|
2373
2379
|
*/
|
|
2374
2380
|
SapQueryRunner.prototype.dropTableSql = function (tableOrName, ifExist) {
|
|
2375
|
-
var query = ifExist ? "DROP TABLE IF EXISTS "
|
|
2381
|
+
var query = ifExist ? "DROP TABLE IF EXISTS ".concat(this.escapePath(tableOrName)) : "DROP TABLE ".concat(this.escapePath(tableOrName));
|
|
2376
2382
|
return new Query_1.Query(query);
|
|
2377
2383
|
};
|
|
2378
2384
|
SapQueryRunner.prototype.createViewSql = function (view) {
|
|
2379
2385
|
if (typeof view.expression === "string") {
|
|
2380
|
-
return new Query_1.Query("CREATE VIEW "
|
|
2386
|
+
return new Query_1.Query("CREATE VIEW ".concat(this.escapePath(view), " AS ").concat(view.expression));
|
|
2381
2387
|
}
|
|
2382
2388
|
else {
|
|
2383
|
-
return new Query_1.Query("CREATE VIEW "
|
|
2389
|
+
return new Query_1.Query("CREATE VIEW ".concat(this.escapePath(view), " AS ").concat(view.expression(this.connection).getQuery()));
|
|
2384
2390
|
}
|
|
2385
2391
|
};
|
|
2386
2392
|
SapQueryRunner.prototype.insertViewDefinitionSql = function (view) {
|
|
@@ -2411,7 +2417,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2411
2417
|
* Builds drop view sql.
|
|
2412
2418
|
*/
|
|
2413
2419
|
SapQueryRunner.prototype.dropViewSql = function (viewOrPath) {
|
|
2414
|
-
return new Query_1.Query("DROP VIEW "
|
|
2420
|
+
return new Query_1.Query("DROP VIEW ".concat(this.escapePath(viewOrPath)));
|
|
2415
2421
|
};
|
|
2416
2422
|
/**
|
|
2417
2423
|
* Builds remove view sql.
|
|
@@ -2434,16 +2440,16 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2434
2440
|
});
|
|
2435
2441
|
};
|
|
2436
2442
|
SapQueryRunner.prototype.addColumnSql = function (table, column) {
|
|
2437
|
-
return "ALTER TABLE "
|
|
2443
|
+
return "ALTER TABLE ".concat(this.escapePath(table), " ADD (").concat(this.buildCreateColumnSql(column), ")");
|
|
2438
2444
|
};
|
|
2439
2445
|
SapQueryRunner.prototype.dropColumnSql = function (table, column) {
|
|
2440
|
-
return "ALTER TABLE "
|
|
2446
|
+
return "ALTER TABLE ".concat(this.escapePath(table), " DROP (\"").concat(column.name, "\")");
|
|
2441
2447
|
};
|
|
2442
2448
|
/**
|
|
2443
2449
|
* Builds create index sql.
|
|
2444
2450
|
*/
|
|
2445
2451
|
SapQueryRunner.prototype.createIndexSql = function (table, index) {
|
|
2446
|
-
var columns = index.columnNames.map(function (columnName) { return "\""
|
|
2452
|
+
var columns = index.columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
2447
2453
|
var indexType = "";
|
|
2448
2454
|
if (index.isUnique) {
|
|
2449
2455
|
indexType += "UNIQUE ";
|
|
@@ -2451,7 +2457,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2451
2457
|
if (index.isFulltext) {
|
|
2452
2458
|
indexType += "FULLTEXT ";
|
|
2453
2459
|
}
|
|
2454
|
-
return new Query_1.Query("CREATE "
|
|
2460
|
+
return new Query_1.Query("CREATE ".concat(indexType, "INDEX \"").concat(index.name, "\" ON ").concat(this.escapePath(table), " (").concat(columns, ") ").concat(index.where ? "WHERE " + index.where : ""));
|
|
2455
2461
|
};
|
|
2456
2462
|
/**
|
|
2457
2463
|
* Builds drop index sql.
|
|
@@ -2460,10 +2466,10 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2460
2466
|
var indexName = indexOrName instanceof TableIndex_1.TableIndex ? indexOrName.name : indexOrName;
|
|
2461
2467
|
var parsedTableName = this.driver.parseTableName(table);
|
|
2462
2468
|
if (!parsedTableName.schema) {
|
|
2463
|
-
return new Query_1.Query("DROP INDEX \""
|
|
2469
|
+
return new Query_1.Query("DROP INDEX \"".concat(indexName, "\""));
|
|
2464
2470
|
}
|
|
2465
2471
|
else {
|
|
2466
|
-
return new Query_1.Query("DROP INDEX \""
|
|
2472
|
+
return new Query_1.Query("DROP INDEX \"".concat(parsedTableName.schema, "\".\"").concat(indexName, "\""));
|
|
2467
2473
|
}
|
|
2468
2474
|
};
|
|
2469
2475
|
/**
|
|
@@ -2471,8 +2477,8 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2471
2477
|
*/
|
|
2472
2478
|
SapQueryRunner.prototype.createPrimaryKeySql = function (table, columnNames) {
|
|
2473
2479
|
var primaryKeyName = this.connection.namingStrategy.primaryKeyName(table, columnNames);
|
|
2474
|
-
var columnNamesString = columnNames.map(function (columnName) { return "\""
|
|
2475
|
-
return new Query_1.Query("ALTER TABLE "
|
|
2480
|
+
var columnNamesString = columnNames.map(function (columnName) { return "\"".concat(columnName, "\""); }).join(", ");
|
|
2481
|
+
return new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(primaryKeyName, "\" PRIMARY KEY (").concat(columnNamesString, ")"));
|
|
2476
2482
|
};
|
|
2477
2483
|
/**
|
|
2478
2484
|
* Builds drop primary key sql.
|
|
@@ -2480,20 +2486,20 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2480
2486
|
SapQueryRunner.prototype.dropPrimaryKeySql = function (table) {
|
|
2481
2487
|
var columnNames = table.primaryColumns.map(function (column) { return column.name; });
|
|
2482
2488
|
var primaryKeyName = this.connection.namingStrategy.primaryKeyName(table, columnNames);
|
|
2483
|
-
return new Query_1.Query("ALTER TABLE "
|
|
2489
|
+
return new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(primaryKeyName, "\""));
|
|
2484
2490
|
};
|
|
2485
2491
|
/**
|
|
2486
2492
|
* Builds create check constraint sql.
|
|
2487
2493
|
*/
|
|
2488
2494
|
SapQueryRunner.prototype.createCheckConstraintSql = function (table, checkConstraint) {
|
|
2489
|
-
return new Query_1.Query("ALTER TABLE "
|
|
2495
|
+
return new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " ADD CONSTRAINT \"").concat(checkConstraint.name, "\" CHECK (").concat(checkConstraint.expression, ")"));
|
|
2490
2496
|
};
|
|
2491
2497
|
/**
|
|
2492
2498
|
* Builds drop check constraint sql.
|
|
2493
2499
|
*/
|
|
2494
2500
|
SapQueryRunner.prototype.dropCheckConstraintSql = function (table, checkOrName) {
|
|
2495
2501
|
var checkName = checkOrName instanceof TableCheck_1.TableCheck ? checkOrName.name : checkOrName;
|
|
2496
|
-
return new Query_1.Query("ALTER TABLE "
|
|
2502
|
+
return new Query_1.Query("ALTER TABLE ".concat(this.escapePath(table), " DROP CONSTRAINT \"").concat(checkName, "\""));
|
|
2497
2503
|
};
|
|
2498
2504
|
/**
|
|
2499
2505
|
* Builds create foreign key sql.
|
|
@@ -2501,19 +2507,19 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2501
2507
|
SapQueryRunner.prototype.createForeignKeySql = function (tableOrName, foreignKey) {
|
|
2502
2508
|
var columnNames = foreignKey.columnNames.map(function (column) { return "\"" + column + "\""; }).join(", ");
|
|
2503
2509
|
var referencedColumnNames = foreignKey.referencedColumnNames.map(function (column) { return "\"" + column + "\""; }).join(",");
|
|
2504
|
-
var sql = "ALTER TABLE "
|
|
2505
|
-
|
|
2510
|
+
var sql = "ALTER TABLE ".concat(this.escapePath(tableOrName), " ADD CONSTRAINT \"").concat(foreignKey.name, "\" FOREIGN KEY (").concat(columnNames, ") ") +
|
|
2511
|
+
"REFERENCES ".concat(this.escapePath(this.getTablePath(foreignKey)), "(").concat(referencedColumnNames, ")");
|
|
2506
2512
|
// SAP HANA does not have "NO ACTION" option for FK's
|
|
2507
2513
|
if (foreignKey.onDelete) {
|
|
2508
2514
|
var onDelete = foreignKey.onDelete === "NO ACTION" ? "RESTRICT" : foreignKey.onDelete;
|
|
2509
|
-
sql += " ON DELETE "
|
|
2515
|
+
sql += " ON DELETE ".concat(onDelete);
|
|
2510
2516
|
}
|
|
2511
2517
|
if (foreignKey.onUpdate) {
|
|
2512
2518
|
var onUpdate = foreignKey.onUpdate === "NO ACTION" ? "RESTRICT" : foreignKey.onUpdate;
|
|
2513
|
-
sql += " ON UPDATE "
|
|
2519
|
+
sql += " ON UPDATE ".concat(onUpdate);
|
|
2514
2520
|
}
|
|
2515
2521
|
if (foreignKey.deferrable) {
|
|
2516
|
-
sql += " "
|
|
2522
|
+
sql += " ".concat(foreignKey.deferrable);
|
|
2517
2523
|
}
|
|
2518
2524
|
return new Query_1.Query(sql);
|
|
2519
2525
|
};
|
|
@@ -2522,7 +2528,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2522
2528
|
*/
|
|
2523
2529
|
SapQueryRunner.prototype.dropForeignKeySql = function (tableOrName, foreignKeyOrName) {
|
|
2524
2530
|
var foreignKeyName = foreignKeyOrName instanceof TableForeignKey_1.TableForeignKey ? foreignKeyOrName.name : foreignKeyOrName;
|
|
2525
|
-
return new Query_1.Query("ALTER TABLE "
|
|
2531
|
+
return new Query_1.Query("ALTER TABLE ".concat(this.escapePath(tableOrName), " DROP CONSTRAINT \"").concat(foreignKeyName, "\""));
|
|
2526
2532
|
};
|
|
2527
2533
|
/**
|
|
2528
2534
|
* Escapes given table or view path.
|
|
@@ -2530,9 +2536,9 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2530
2536
|
SapQueryRunner.prototype.escapePath = function (target) {
|
|
2531
2537
|
var _a = this.driver.parseTableName(target), schema = _a.schema, tableName = _a.tableName;
|
|
2532
2538
|
if (schema) {
|
|
2533
|
-
return "\""
|
|
2539
|
+
return "\"".concat(schema, "\".\"").concat(tableName, "\"");
|
|
2534
2540
|
}
|
|
2535
|
-
return "\""
|
|
2541
|
+
return "\"".concat(tableName, "\"");
|
|
2536
2542
|
};
|
|
2537
2543
|
/**
|
|
2538
2544
|
* Concat database name and schema name to the foreign key name.
|
|
@@ -2563,7 +2569,7 @@ var SapQueryRunner = /** @class */ (function (_super) {
|
|
|
2563
2569
|
* Builds a query for create column.
|
|
2564
2570
|
*/
|
|
2565
2571
|
SapQueryRunner.prototype.buildCreateColumnSql = function (column) {
|
|
2566
|
-
var c = "\""
|
|
2572
|
+
var c = "\"".concat(column.name, "\" ") + this.connection.driver.createFullType(column);
|
|
2567
2573
|
if (column.charset)
|
|
2568
2574
|
c += " CHARACTER SET " + column.charset;
|
|
2569
2575
|
if (column.collation)
|