@stingerloom/orm 0.1.0
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/LICENSE +21 -0
- package/README.md +53 -0
- package/dist/DatabaseClient.d.ts +23 -0
- package/dist/DatabaseClient.d.ts.map +1 -0
- package/dist/DatabaseClient.js +125 -0
- package/dist/DatabaseClient.js.map +1 -0
- package/dist/core/BaseEntityManager.d.ts +29 -0
- package/dist/core/BaseEntityManager.d.ts.map +1 -0
- package/dist/core/BaseEntityManager.js +7 -0
- package/dist/core/BaseEntityManager.js.map +1 -0
- package/dist/core/BaseInsertQueryBuilder.d.ts +8 -0
- package/dist/core/BaseInsertQueryBuilder.d.ts.map +1 -0
- package/dist/core/BaseInsertQueryBuilder.js +3 -0
- package/dist/core/BaseInsertQueryBuilder.js.map +1 -0
- package/dist/core/BaseRawQueryBuilder.d.ts +33 -0
- package/dist/core/BaseRawQueryBuilder.d.ts.map +1 -0
- package/dist/core/BaseRawQueryBuilder.js +3 -0
- package/dist/core/BaseRawQueryBuilder.js.map +1 -0
- package/dist/core/BaseRepository.d.ts +37 -0
- package/dist/core/BaseRepository.d.ts.map +1 -0
- package/dist/core/BaseRepository.js +77 -0
- package/dist/core/BaseRepository.js.map +1 -0
- package/dist/core/BaseResultTransformer.d.ts +11 -0
- package/dist/core/BaseResultTransformer.d.ts.map +1 -0
- package/dist/core/BaseResultTransformer.js +3 -0
- package/dist/core/BaseResultTransformer.js.map +1 -0
- package/dist/core/Conditions.d.ts +33 -0
- package/dist/core/Conditions.d.ts.map +1 -0
- package/dist/core/Conditions.js +154 -0
- package/dist/core/Conditions.js.map +1 -0
- package/dist/core/CursorPagination.d.ts +19 -0
- package/dist/core/CursorPagination.d.ts.map +1 -0
- package/dist/core/CursorPagination.js +27 -0
- package/dist/core/CursorPagination.js.map +1 -0
- package/dist/core/DatabaseClientOptions.d.ts +41 -0
- package/dist/core/DatabaseClientOptions.d.ts.map +1 -0
- package/dist/core/DatabaseClientOptions.js +3 -0
- package/dist/core/DatabaseClientOptions.js.map +1 -0
- package/dist/core/EntityEventEmitter.d.ts +14 -0
- package/dist/core/EntityEventEmitter.d.ts.map +1 -0
- package/dist/core/EntityEventEmitter.js +35 -0
- package/dist/core/EntityEventEmitter.js.map +1 -0
- package/dist/core/EntityManager.d.ts +115 -0
- package/dist/core/EntityManager.d.ts.map +1 -0
- package/dist/core/EntityManager.js +2347 -0
- package/dist/core/EntityManager.js.map +1 -0
- package/dist/core/EntitySubscriber.d.ts +31 -0
- package/dist/core/EntitySubscriber.d.ts.map +1 -0
- package/dist/core/EntitySubscriber.js +3 -0
- package/dist/core/EntitySubscriber.js.map +1 -0
- package/dist/core/EntityValidator.d.ts +6 -0
- package/dist/core/EntityValidator.d.ts.map +1 -0
- package/dist/core/EntityValidator.js +43 -0
- package/dist/core/EntityValidator.js.map +1 -0
- package/dist/core/ExplainResult.d.ts +9 -0
- package/dist/core/ExplainResult.d.ts.map +1 -0
- package/dist/core/ExplainResult.js +3 -0
- package/dist/core/ExplainResult.js.map +1 -0
- package/dist/core/IConnector.d.ts +18 -0
- package/dist/core/IConnector.d.ts.map +1 -0
- package/dist/core/IConnector.js +7 -0
- package/dist/core/IConnector.js.map +1 -0
- package/dist/core/LazyLoader.d.ts +6 -0
- package/dist/core/LazyLoader.d.ts.map +1 -0
- package/dist/core/LazyLoader.js +94 -0
- package/dist/core/LazyLoader.js.map +1 -0
- package/dist/core/MyClassConstructor.d.ts +4 -0
- package/dist/core/MyClassConstructor.d.ts.map +1 -0
- package/dist/core/MyClassConstructor.js +3 -0
- package/dist/core/MyClassConstructor.js.map +1 -0
- package/dist/core/QueryTracker.d.ts +37 -0
- package/dist/core/QueryTracker.d.ts.map +1 -0
- package/dist/core/QueryTracker.js +111 -0
- package/dist/core/QueryTracker.js.map +1 -0
- package/dist/core/RawQueryBuilder.d.ts +40 -0
- package/dist/core/RawQueryBuilder.d.ts.map +1 -0
- package/dist/core/RawQueryBuilder.js +211 -0
- package/dist/core/RawQueryBuilder.js.map +1 -0
- package/dist/core/RawQueryBuilderFactory.d.ts +6 -0
- package/dist/core/RawQueryBuilderFactory.d.ts.map +1 -0
- package/dist/core/RawQueryBuilderFactory.js +14 -0
- package/dist/core/RawQueryBuilderFactory.js.map +1 -0
- package/dist/core/ResultTransformer.d.ts +24 -0
- package/dist/core/ResultTransformer.d.ts.map +1 -0
- package/dist/core/ResultTransformer.js +134 -0
- package/dist/core/ResultTransformer.js.map +1 -0
- package/dist/core/ResultTransformerFactory.d.ts +5 -0
- package/dist/core/ResultTransformerFactory.d.ts.map +1 -0
- package/dist/core/ResultTransformerFactory.js +11 -0
- package/dist/core/ResultTransformerFactory.js.map +1 -0
- package/dist/core/SelectUtils.d.ts +14 -0
- package/dist/core/SelectUtils.d.ts.map +1 -0
- package/dist/core/SelectUtils.js +19 -0
- package/dist/core/SelectUtils.js.map +1 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.d.ts +7 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.d.ts.map +1 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.js +14 -0
- package/dist/core/deserializer/ClassTransformerDeserializer.js.map +1 -0
- package/dist/core/deserializer/DeserializeEntity.d.ts +7 -0
- package/dist/core/deserializer/DeserializeEntity.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializeEntity.js +17 -0
- package/dist/core/deserializer/DeserializeEntity.js.map +1 -0
- package/dist/core/deserializer/DeserializeOptions.d.ts +9 -0
- package/dist/core/deserializer/DeserializeOptions.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializeOptions.js +3 -0
- package/dist/core/deserializer/DeserializeOptions.js.map +1 -0
- package/dist/core/deserializer/Deserializer.d.ts +6 -0
- package/dist/core/deserializer/Deserializer.d.ts.map +1 -0
- package/dist/core/deserializer/Deserializer.js +3 -0
- package/dist/core/deserializer/Deserializer.js.map +1 -0
- package/dist/core/deserializer/DeserializerRegistry.d.ts +13 -0
- package/dist/core/deserializer/DeserializerRegistry.d.ts.map +1 -0
- package/dist/core/deserializer/DeserializerRegistry.js +26 -0
- package/dist/core/deserializer/DeserializerRegistry.js.map +1 -0
- package/dist/core/deserializer/index.d.ts +6 -0
- package/dist/core/deserializer/index.d.ts.map +1 -0
- package/dist/core/deserializer/index.js +22 -0
- package/dist/core/deserializer/index.js.map +1 -0
- package/dist/core/generators/SchemaDiff.d.ts +34 -0
- package/dist/core/generators/SchemaDiff.d.ts.map +1 -0
- package/dist/core/generators/SchemaDiff.js +231 -0
- package/dist/core/generators/SchemaDiff.js.map +1 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.d.ts +11 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.d.ts.map +1 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.js +108 -0
- package/dist/core/generators/SchemaDiffMigrationGenerator.js.map +1 -0
- package/dist/core/generators/SchemaGenerator.d.ts +37 -0
- package/dist/core/generators/SchemaGenerator.d.ts.map +1 -0
- package/dist/core/generators/SchemaGenerator.js +379 -0
- package/dist/core/generators/SchemaGenerator.js.map +1 -0
- package/dist/core/generators/index.d.ts +4 -0
- package/dist/core/generators/index.d.ts.map +1 -0
- package/dist/core/generators/index.js +20 -0
- package/dist/core/generators/index.js.map +1 -0
- package/dist/core/index.d.ts +20 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +36 -0
- package/dist/core/index.js.map +1 -0
- package/dist/decorators/Column.d.ts +19 -0
- package/dist/decorators/Column.d.ts.map +1 -0
- package/dist/decorators/Column.js +53 -0
- package/dist/decorators/Column.js.map +1 -0
- package/dist/decorators/CustomColumn.d.ts +6 -0
- package/dist/decorators/CustomColumn.d.ts.map +1 -0
- package/dist/decorators/CustomColumn.js +13 -0
- package/dist/decorators/CustomColumn.js.map +1 -0
- package/dist/decorators/DeletedAt.d.ts +3 -0
- package/dist/decorators/DeletedAt.d.ts.map +1 -0
- package/dist/decorators/DeletedAt.js +16 -0
- package/dist/decorators/DeletedAt.js.map +1 -0
- package/dist/decorators/Entity.d.ts +16 -0
- package/dist/decorators/Entity.d.ts.map +1 -0
- package/dist/decorators/Entity.js +32 -0
- package/dist/decorators/Entity.js.map +1 -0
- package/dist/decorators/Hooks.d.ts +14 -0
- package/dist/decorators/Hooks.d.ts.map +1 -0
- package/dist/decorators/Hooks.js +36 -0
- package/dist/decorators/Hooks.js.map +1 -0
- package/dist/decorators/Indexer.d.ts +11 -0
- package/dist/decorators/Indexer.d.ts.map +1 -0
- package/dist/decorators/Indexer.js +21 -0
- package/dist/decorators/Indexer.js.map +1 -0
- package/dist/decorators/InjectEntityManager.d.ts +3 -0
- package/dist/decorators/InjectEntityManager.d.ts.map +1 -0
- package/dist/decorators/InjectEntityManager.js +13 -0
- package/dist/decorators/InjectEntityManager.js.map +1 -0
- package/dist/decorators/InjectRepository.d.ts +4 -0
- package/dist/decorators/InjectRepository.d.ts.map +1 -0
- package/dist/decorators/InjectRepository.js +22 -0
- package/dist/decorators/InjectRepository.js.map +1 -0
- package/dist/decorators/ManyToMany.d.ts +21 -0
- package/dist/decorators/ManyToMany.d.ts.map +1 -0
- package/dist/decorators/ManyToMany.js +29 -0
- package/dist/decorators/ManyToMany.js.map +1 -0
- package/dist/decorators/ManyToOne.d.ts +27 -0
- package/dist/decorators/ManyToOne.d.ts.map +1 -0
- package/dist/decorators/ManyToOne.js +35 -0
- package/dist/decorators/ManyToOne.js.map +1 -0
- package/dist/decorators/OneToMany.d.ts +17 -0
- package/dist/decorators/OneToMany.d.ts.map +1 -0
- package/dist/decorators/OneToMany.js +29 -0
- package/dist/decorators/OneToMany.js.map +1 -0
- package/dist/decorators/OneToOne.d.ts +20 -0
- package/dist/decorators/OneToOne.d.ts.map +1 -0
- package/dist/decorators/OneToOne.js +30 -0
- package/dist/decorators/OneToOne.js.map +1 -0
- package/dist/decorators/PrimaryColumn.d.ts +3 -0
- package/dist/decorators/PrimaryColumn.d.ts.map +1 -0
- package/dist/decorators/PrimaryColumn.js +14 -0
- package/dist/decorators/PrimaryColumn.js.map +1 -0
- package/dist/decorators/PrimaryGeneratedColumn.d.ts +3 -0
- package/dist/decorators/PrimaryGeneratedColumn.d.ts.map +1 -0
- package/dist/decorators/PrimaryGeneratedColumn.js +17 -0
- package/dist/decorators/PrimaryGeneratedColumn.js.map +1 -0
- package/dist/decorators/Transactional.d.ts +15 -0
- package/dist/decorators/Transactional.d.ts.map +1 -0
- package/dist/decorators/Transactional.js +76 -0
- package/dist/decorators/Transactional.js.map +1 -0
- package/dist/decorators/UniqueIndex.d.ts +7 -0
- package/dist/decorators/UniqueIndex.d.ts.map +1 -0
- package/dist/decorators/UniqueIndex.js +12 -0
- package/dist/decorators/UniqueIndex.js.map +1 -0
- package/dist/decorators/Validation.d.ts +15 -0
- package/dist/decorators/Validation.d.ts.map +1 -0
- package/dist/decorators/Validation.js +64 -0
- package/dist/decorators/Validation.js.map +1 -0
- package/dist/decorators/Version.d.ts +3 -0
- package/dist/decorators/Version.d.ts.map +1 -0
- package/dist/decorators/Version.js +17 -0
- package/dist/decorators/Version.js.map +1 -0
- package/dist/decorators/index.d.ts +19 -0
- package/dist/decorators/index.d.ts.map +1 -0
- package/dist/decorators/index.js +35 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/dialects/ConnectionLeakDetector.d.ts +19 -0
- package/dist/dialects/ConnectionLeakDetector.d.ts.map +1 -0
- package/dist/dialects/ConnectionLeakDetector.js +50 -0
- package/dist/dialects/ConnectionLeakDetector.js.map +1 -0
- package/dist/dialects/EntityNotFound.d.ts +4 -0
- package/dist/dialects/EntityNotFound.d.ts.map +1 -0
- package/dist/dialects/EntityNotFound.js +10 -0
- package/dist/dialects/EntityNotFound.js.map +1 -0
- package/dist/dialects/FindOption.d.ts +20 -0
- package/dist/dialects/FindOption.d.ts.map +1 -0
- package/dist/dialects/FindOption.js +3 -0
- package/dist/dialects/FindOption.js.map +1 -0
- package/dist/dialects/IConnection.d.ts +7 -0
- package/dist/dialects/IConnection.d.ts.map +1 -0
- package/dist/dialects/IConnection.js +3 -0
- package/dist/dialects/IConnection.js.map +1 -0
- package/dist/dialects/IDataSource.d.ts +12 -0
- package/dist/dialects/IDataSource.d.ts.map +1 -0
- package/dist/dialects/IDataSource.js +3 -0
- package/dist/dialects/IDataSource.js.map +1 -0
- package/dist/dialects/IOrderBy.d.ts +4 -0
- package/dist/dialects/IOrderBy.d.ts.map +1 -0
- package/dist/dialects/IOrderBy.js +3 -0
- package/dist/dialects/IOrderBy.js.map +1 -0
- package/dist/dialects/IQueryEngine.d.ts +15 -0
- package/dist/dialects/IQueryEngine.d.ts.map +1 -0
- package/dist/dialects/IQueryEngine.js +7 -0
- package/dist/dialects/IQueryEngine.js.map +1 -0
- package/dist/dialects/ISelectOption.d.ts +7 -0
- package/dist/dialects/ISelectOption.d.ts.map +1 -0
- package/dist/dialects/ISelectOption.js +3 -0
- package/dist/dialects/ISelectOption.js.map +1 -0
- package/dist/dialects/ITenantMigrationRunner.d.ts +16 -0
- package/dist/dialects/ITenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/ITenantMigrationRunner.js +3 -0
- package/dist/dialects/ITenantMigrationRunner.js.map +1 -0
- package/dist/dialects/ITxEngine.d.ts +9 -0
- package/dist/dialects/ITxEngine.d.ts.map +1 -0
- package/dist/dialects/ITxEngine.js +3 -0
- package/dist/dialects/ITxEngine.js.map +1 -0
- package/dist/dialects/IsolationLevel.d.ts +2 -0
- package/dist/dialects/IsolationLevel.d.ts.map +1 -0
- package/dist/dialects/IsolationLevel.js +3 -0
- package/dist/dialects/IsolationLevel.js.map +1 -0
- package/dist/dialects/ReplicationRouter.d.ts +28 -0
- package/dist/dialects/ReplicationRouter.d.ts.map +1 -0
- package/dist/dialects/ReplicationRouter.js +64 -0
- package/dist/dialects/ReplicationRouter.js.map +1 -0
- package/dist/dialects/SqlDriver.d.ts +43 -0
- package/dist/dialects/SqlDriver.d.ts.map +1 -0
- package/dist/dialects/SqlDriver.js +3 -0
- package/dist/dialects/SqlDriver.js.map +1 -0
- package/dist/dialects/TransactionSessionManager.d.ts +21 -0
- package/dist/dialects/TransactionSessionManager.d.ts.map +1 -0
- package/dist/dialects/TransactionSessionManager.js +112 -0
- package/dist/dialects/TransactionSessionManager.js.map +1 -0
- package/dist/dialects/index.d.ts +32 -0
- package/dist/dialects/index.d.ts.map +1 -0
- package/dist/dialects/index.js +65 -0
- package/dist/dialects/index.js.map +1 -0
- package/dist/dialects/mysql/BaseSchema.d.ts +9 -0
- package/dist/dialects/mysql/BaseSchema.d.ts.map +1 -0
- package/dist/dialects/mysql/BaseSchema.js +3 -0
- package/dist/dialects/mysql/BaseSchema.js.map +1 -0
- package/dist/dialects/mysql/Connection.d.ts +9 -0
- package/dist/dialects/mysql/Connection.d.ts.map +1 -0
- package/dist/dialects/mysql/Connection.js +3 -0
- package/dist/dialects/mysql/Connection.js.map +1 -0
- package/dist/dialects/mysql/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/mysql/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/mysql/ConnectionNotFound.js +10 -0
- package/dist/dialects/mysql/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/mysql/MySqlConnectionError.d.ts +4 -0
- package/dist/dialects/mysql/MySqlConnectionError.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlConnectionError.js +10 -0
- package/dist/dialects/mysql/MySqlConnectionError.js.map +1 -0
- package/dist/dialects/mysql/MySqlConnector.d.ts +26 -0
- package/dist/dialects/mysql/MySqlConnector.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlConnector.js +195 -0
- package/dist/dialects/mysql/MySqlConnector.js.map +1 -0
- package/dist/dialects/mysql/MySqlDataSource.d.ts +17 -0
- package/dist/dialects/mysql/MySqlDataSource.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlDataSource.js +63 -0
- package/dist/dialects/mysql/MySqlDataSource.js.map +1 -0
- package/dist/dialects/mysql/MySqlDriver.d.ts +49 -0
- package/dist/dialects/mysql/MySqlDriver.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlDriver.js +260 -0
- package/dist/dialects/mysql/MySqlDriver.js.map +1 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.d.ts +11 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.js +31 -0
- package/dist/dialects/mysql/MySqlTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/mysql/MysqlConnection.d.ts +12 -0
- package/dist/dialects/mysql/MysqlConnection.d.ts.map +1 -0
- package/dist/dialects/mysql/MysqlConnection.js +26 -0
- package/dist/dialects/mysql/MysqlConnection.js.map +1 -0
- package/dist/dialects/mysql/PoolNotFound.d.ts +4 -0
- package/dist/dialects/mysql/PoolNotFound.d.ts.map +1 -0
- package/dist/dialects/mysql/PoolNotFound.js +10 -0
- package/dist/dialects/mysql/PoolNotFound.js.map +1 -0
- package/dist/dialects/mysql/index.d.ts +10 -0
- package/dist/dialects/mysql/index.d.ts.map +1 -0
- package/dist/dialects/mysql/index.js +26 -0
- package/dist/dialects/mysql/index.js.map +1 -0
- package/dist/dialects/postgres/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/postgres/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/postgres/ConnectionNotFound.js +10 -0
- package/dist/dialects/postgres/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/postgres/PoolNotFound.d.ts +4 -0
- package/dist/dialects/postgres/PoolNotFound.d.ts.map +1 -0
- package/dist/dialects/postgres/PoolNotFound.js +10 -0
- package/dist/dialects/postgres/PoolNotFound.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnection.d.ts +12 -0
- package/dist/dialects/postgres/PostgresConnection.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnection.js +26 -0
- package/dist/dialects/postgres/PostgresConnection.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnectionError.d.ts +4 -0
- package/dist/dialects/postgres/PostgresConnectionError.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnectionError.js +10 -0
- package/dist/dialects/postgres/PostgresConnectionError.js.map +1 -0
- package/dist/dialects/postgres/PostgresConnector.d.ts +24 -0
- package/dist/dialects/postgres/PostgresConnector.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresConnector.js +158 -0
- package/dist/dialects/postgres/PostgresConnector.js.map +1 -0
- package/dist/dialects/postgres/PostgresDataSource.d.ts +18 -0
- package/dist/dialects/postgres/PostgresDataSource.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresDataSource.js +66 -0
- package/dist/dialects/postgres/PostgresDataSource.js.map +1 -0
- package/dist/dialects/postgres/PostgresDriver.d.ts +71 -0
- package/dist/dialects/postgres/PostgresDriver.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresDriver.js +440 -0
- package/dist/dialects/postgres/PostgresDriver.js.map +1 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.d.ts +18 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.js +78 -0
- package/dist/dialects/postgres/PostgresTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/postgres/index.d.ts +8 -0
- package/dist/dialects/postgres/index.d.ts.map +1 -0
- package/dist/dialects/postgres/index.js +26 -0
- package/dist/dialects/postgres/index.js.map +1 -0
- package/dist/dialects/sqlite/ConnectionNotFound.d.ts +4 -0
- package/dist/dialects/sqlite/ConnectionNotFound.d.ts.map +1 -0
- package/dist/dialects/sqlite/ConnectionNotFound.js +10 -0
- package/dist/dialects/sqlite/ConnectionNotFound.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnection.d.ts +12 -0
- package/dist/dialects/sqlite/SqliteConnection.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnection.js +23 -0
- package/dist/dialects/sqlite/SqliteConnection.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnectionError.d.ts +4 -0
- package/dist/dialects/sqlite/SqliteConnectionError.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnectionError.js +10 -0
- package/dist/dialects/sqlite/SqliteConnectionError.js.map +1 -0
- package/dist/dialects/sqlite/SqliteConnector.d.ts +24 -0
- package/dist/dialects/sqlite/SqliteConnector.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteConnector.js +119 -0
- package/dist/dialects/sqlite/SqliteConnector.js.map +1 -0
- package/dist/dialects/sqlite/SqliteDataSource.d.ts +18 -0
- package/dist/dialects/sqlite/SqliteDataSource.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteDataSource.js +56 -0
- package/dist/dialects/sqlite/SqliteDataSource.js.map +1 -0
- package/dist/dialects/sqlite/SqliteDriver.d.ts +49 -0
- package/dist/dialects/sqlite/SqliteDriver.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteDriver.js +234 -0
- package/dist/dialects/sqlite/SqliteDriver.js.map +1 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.d.ts +11 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.d.ts.map +1 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.js +31 -0
- package/dist/dialects/sqlite/SqliteTenantMigrationRunner.js.map +1 -0
- package/dist/dialects/sqlite/index.d.ts +7 -0
- package/dist/dialects/sqlite/index.d.ts.map +1 -0
- package/dist/dialects/sqlite/index.js +23 -0
- package/dist/dialects/sqlite/index.js.map +1 -0
- package/dist/errors/AdvisoryLockError.d.ts +5 -0
- package/dist/errors/AdvisoryLockError.d.ts.map +1 -0
- package/dist/errors/AdvisoryLockError.js +13 -0
- package/dist/errors/AdvisoryLockError.js.map +1 -0
- package/dist/errors/DatabaseConnectionFailedError.d.ts +5 -0
- package/dist/errors/DatabaseConnectionFailedError.d.ts.map +1 -0
- package/dist/errors/DatabaseConnectionFailedError.js +11 -0
- package/dist/errors/DatabaseConnectionFailedError.js.map +1 -0
- package/dist/errors/DatabaseNotConnectedError.d.ts +5 -0
- package/dist/errors/DatabaseNotConnectedError.d.ts.map +1 -0
- package/dist/errors/DatabaseNotConnectedError.js +11 -0
- package/dist/errors/DatabaseNotConnectedError.js.map +1 -0
- package/dist/errors/DeleteWithoutConditionsError.d.ts +5 -0
- package/dist/errors/DeleteWithoutConditionsError.d.ts.map +1 -0
- package/dist/errors/DeleteWithoutConditionsError.js +13 -0
- package/dist/errors/DeleteWithoutConditionsError.js.map +1 -0
- package/dist/errors/EntityMetadataNotFoundError.d.ts +5 -0
- package/dist/errors/EntityMetadataNotFoundError.d.ts.map +1 -0
- package/dist/errors/EntityMetadataNotFoundError.js +13 -0
- package/dist/errors/EntityMetadataNotFoundError.js.map +1 -0
- package/dist/errors/EntityNotFoundError.d.ts +5 -0
- package/dist/errors/EntityNotFoundError.d.ts.map +1 -0
- package/dist/errors/EntityNotFoundError.js +13 -0
- package/dist/errors/EntityNotFoundError.js.map +1 -0
- package/dist/errors/Exception.d.ts +5 -0
- package/dist/errors/Exception.d.ts.map +1 -0
- package/dist/errors/Exception.js +11 -0
- package/dist/errors/Exception.js.map +1 -0
- package/dist/errors/InvalidQueryError.d.ts +5 -0
- package/dist/errors/InvalidQueryError.d.ts.map +1 -0
- package/dist/errors/InvalidQueryError.js +13 -0
- package/dist/errors/InvalidQueryError.js.map +1 -0
- package/dist/errors/NotSupportedDatabaseTypeError.d.ts +5 -0
- package/dist/errors/NotSupportedDatabaseTypeError.d.ts.map +1 -0
- package/dist/errors/NotSupportedDatabaseTypeError.js +11 -0
- package/dist/errors/NotSupportedDatabaseTypeError.js.map +1 -0
- package/dist/errors/OrmError.d.ts +6 -0
- package/dist/errors/OrmError.d.ts.map +1 -0
- package/dist/errors/OrmError.js +12 -0
- package/dist/errors/OrmError.js.map +1 -0
- package/dist/errors/OrmErrorCode.d.ts +16 -0
- package/dist/errors/OrmErrorCode.d.ts.map +1 -0
- package/dist/errors/OrmErrorCode.js +20 -0
- package/dist/errors/OrmErrorCode.js.map +1 -0
- package/dist/errors/PrimaryKeyNotFoundError.d.ts +5 -0
- package/dist/errors/PrimaryKeyNotFoundError.d.ts.map +1 -0
- package/dist/errors/PrimaryKeyNotFoundError.js +13 -0
- package/dist/errors/PrimaryKeyNotFoundError.js.map +1 -0
- package/dist/errors/QueryTimeoutError.d.ts +5 -0
- package/dist/errors/QueryTimeoutError.d.ts.map +1 -0
- package/dist/errors/QueryTimeoutError.js +13 -0
- package/dist/errors/QueryTimeoutError.js.map +1 -0
- package/dist/errors/TransactionError.d.ts +5 -0
- package/dist/errors/TransactionError.d.ts.map +1 -0
- package/dist/errors/TransactionError.js +13 -0
- package/dist/errors/TransactionError.js.map +1 -0
- package/dist/errors/ValidationError.d.ts +6 -0
- package/dist/errors/ValidationError.d.ts.map +1 -0
- package/dist/errors/ValidationError.js +13 -0
- package/dist/errors/ValidationError.js.map +1 -0
- package/dist/errors/index.d.ts +16 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +32 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/metadata/LayeredMetadataScanner.d.ts +32 -0
- package/dist/metadata/LayeredMetadataScanner.d.ts.map +1 -0
- package/dist/metadata/LayeredMetadataScanner.js +119 -0
- package/dist/metadata/LayeredMetadataScanner.js.map +1 -0
- package/dist/metadata/LayeredMetadataStore.d.ts +30 -0
- package/dist/metadata/LayeredMetadataStore.d.ts.map +1 -0
- package/dist/metadata/LayeredMetadataStore.js +150 -0
- package/dist/metadata/LayeredMetadataStore.js.map +1 -0
- package/dist/metadata/MetadataContext.d.ts +11 -0
- package/dist/metadata/MetadataContext.d.ts.map +1 -0
- package/dist/metadata/MetadataContext.js +23 -0
- package/dist/metadata/MetadataContext.js.map +1 -0
- package/dist/metadata/MetadataLayer.d.ts +27 -0
- package/dist/metadata/MetadataLayer.d.ts.map +1 -0
- package/dist/metadata/MetadataLayer.js +78 -0
- package/dist/metadata/MetadataLayer.js.map +1 -0
- package/dist/metadata/MetadataPath.d.ts +24 -0
- package/dist/metadata/MetadataPath.d.ts.map +1 -0
- package/dist/metadata/MetadataPath.js +104 -0
- package/dist/metadata/MetadataPath.js.map +1 -0
- package/dist/metadata/MultiTenantMetadataManager.d.ts +27 -0
- package/dist/metadata/MultiTenantMetadataManager.d.ts.map +1 -0
- package/dist/metadata/MultiTenantMetadataManager.js +69 -0
- package/dist/metadata/MultiTenantMetadataManager.js.map +1 -0
- package/dist/metadata/index.d.ts +7 -0
- package/dist/metadata/index.d.ts.map +1 -0
- package/dist/metadata/index.js +23 -0
- package/dist/metadata/index.js.map +1 -0
- package/dist/migration/Migration.d.ts +11 -0
- package/dist/migration/Migration.d.ts.map +1 -0
- package/dist/migration/Migration.js +10 -0
- package/dist/migration/Migration.js.map +1 -0
- package/dist/migration/MigrationCli.d.ts +25 -0
- package/dist/migration/MigrationCli.d.ts.map +1 -0
- package/dist/migration/MigrationCli.js +108 -0
- package/dist/migration/MigrationCli.js.map +1 -0
- package/dist/migration/MigrationRunner.d.ts +47 -0
- package/dist/migration/MigrationRunner.d.ts.map +1 -0
- package/dist/migration/MigrationRunner.js +182 -0
- package/dist/migration/MigrationRunner.js.map +1 -0
- package/dist/migration/index.d.ts +4 -0
- package/dist/migration/index.d.ts.map +1 -0
- package/dist/migration/index.js +20 -0
- package/dist/migration/index.js.map +1 -0
- package/dist/scanner/ColumnScanner.d.ts +16 -0
- package/dist/scanner/ColumnScanner.d.ts.map +1 -0
- package/dist/scanner/ColumnScanner.js +30 -0
- package/dist/scanner/ColumnScanner.js.map +1 -0
- package/dist/scanner/EntityScanner.d.ts +14 -0
- package/dist/scanner/EntityScanner.d.ts.map +1 -0
- package/dist/scanner/EntityScanner.js +38 -0
- package/dist/scanner/EntityScanner.js.map +1 -0
- package/dist/scanner/ManyToManyScanner.d.ts +9 -0
- package/dist/scanner/ManyToManyScanner.d.ts.map +1 -0
- package/dist/scanner/ManyToManyScanner.js +39 -0
- package/dist/scanner/ManyToManyScanner.js.map +1 -0
- package/dist/scanner/ManyToOneScanner.d.ts +9 -0
- package/dist/scanner/ManyToOneScanner.d.ts.map +1 -0
- package/dist/scanner/ManyToOneScanner.js +38 -0
- package/dist/scanner/ManyToOneScanner.js.map +1 -0
- package/dist/scanner/MetadataScanner.d.ts +45 -0
- package/dist/scanner/MetadataScanner.d.ts.map +1 -0
- package/dist/scanner/MetadataScanner.js +200 -0
- package/dist/scanner/MetadataScanner.js.map +1 -0
- package/dist/scanner/OneToManyScanner.d.ts +9 -0
- package/dist/scanner/OneToManyScanner.d.ts.map +1 -0
- package/dist/scanner/OneToManyScanner.js +39 -0
- package/dist/scanner/OneToManyScanner.js.map +1 -0
- package/dist/scanner/OneToOneScanner.d.ts +9 -0
- package/dist/scanner/OneToOneScanner.d.ts.map +1 -0
- package/dist/scanner/OneToOneScanner.js +39 -0
- package/dist/scanner/OneToOneScanner.js.map +1 -0
- package/dist/scanner/index.d.ts +9 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +27 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/types/CascadeType.d.ts +5 -0
- package/dist/types/CascadeType.d.ts.map +1 -0
- package/dist/types/CascadeType.js +19 -0
- package/dist/types/CascadeType.js.map +1 -0
- package/dist/types/ColumnPaths.d.ts +7 -0
- package/dist/types/ColumnPaths.d.ts.map +1 -0
- package/dist/types/ColumnPaths.js +3 -0
- package/dist/types/ColumnPaths.js.map +1 -0
- package/dist/types/DeepPartial.d.ts +4 -0
- package/dist/types/DeepPartial.d.ts.map +1 -0
- package/dist/types/DeepPartial.js +3 -0
- package/dist/types/DeepPartial.js.map +1 -0
- package/dist/types/DeleteResult.d.ts +4 -0
- package/dist/types/DeleteResult.d.ts.map +1 -0
- package/dist/types/DeleteResult.js +3 -0
- package/dist/types/DeleteResult.js.map +1 -0
- package/dist/types/EntityResult.d.ts +3 -0
- package/dist/types/EntityResult.d.ts.map +1 -0
- package/dist/types/EntityResult.js +3 -0
- package/dist/types/EntityResult.js.map +1 -0
- package/dist/types/FindCondition.d.ts +16 -0
- package/dist/types/FindCondition.d.ts.map +1 -0
- package/dist/types/FindCondition.js +3 -0
- package/dist/types/FindCondition.js.map +1 -0
- package/dist/types/OrderByOption.d.ts +5 -0
- package/dist/types/OrderByOption.d.ts.map +1 -0
- package/dist/types/OrderByOption.js +3 -0
- package/dist/types/OrderByOption.js.map +1 -0
- package/dist/types/QueryResult.d.ts +5 -0
- package/dist/types/QueryResult.d.ts.map +1 -0
- package/dist/types/QueryResult.js +3 -0
- package/dist/types/QueryResult.js.map +1 -0
- package/dist/types/SchemaOption.d.ts +3 -0
- package/dist/types/SchemaOption.d.ts.map +1 -0
- package/dist/types/SchemaOption.js +3 -0
- package/dist/types/SchemaOption.js.map +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +25 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/Logger.d.ts +15 -0
- package/dist/utils/Logger.d.ts.map +1 -0
- package/dist/utils/Logger.js +75 -0
- package/dist/utils/Logger.js.map +1 -0
- package/dist/utils/ReflectManager.d.ts +12 -0
- package/dist/utils/ReflectManager.d.ts.map +1 -0
- package/dist/utils/ReflectManager.js +34 -0
- package/dist/utils/ReflectManager.js.map +1 -0
- package/dist/utils/camelToSnakeCase.d.ts +2 -0
- package/dist/utils/camelToSnakeCase.d.ts.map +1 -0
- package/dist/utils/camelToSnakeCase.js +7 -0
- package/dist/utils/camelToSnakeCase.js.map +1 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +22 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/scanner.d.ts +2 -0
- package/dist/utils/scanner.d.ts.map +1 -0
- package/dist/utils/scanner.js +8 -0
- package/dist/utils/scanner.js.map +1 -0
- package/dist/utils/types.d.ts +5 -0
- package/dist/utils/types.d.ts.map +1 -0
- package/dist/utils/types.js +3 -0
- package/dist/utils/types.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.MySqlConnector = void 0;
|
|
7
|
+
const sql_template_tag_1 = __importDefault(require("sql-template-tag"));
|
|
8
|
+
const Logger_1 = require("../../utils/Logger");
|
|
9
|
+
const ConnectionNotFound_1 = require("./ConnectionNotFound");
|
|
10
|
+
const PoolNotFound_1 = require("./PoolNotFound");
|
|
11
|
+
const IConnector_1 = require("../../core/IConnector");
|
|
12
|
+
const MysqlConnection_1 = require("./MysqlConnection");
|
|
13
|
+
class MySqlConnector extends IConnector_1.IConnector {
|
|
14
|
+
constructor() {
|
|
15
|
+
super(...arguments);
|
|
16
|
+
this.isDebug = false;
|
|
17
|
+
this.logger = new Logger_1.Logger("MySqlConnector");
|
|
18
|
+
}
|
|
19
|
+
async connect(options) {
|
|
20
|
+
try {
|
|
21
|
+
let mysql;
|
|
22
|
+
try {
|
|
23
|
+
mysql = require("mysql2");
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
throw new Error("mysql2 패키지가 필요합니다. npm install mysql2");
|
|
27
|
+
}
|
|
28
|
+
const { host, username, password, database, port, datesStrings, connectionLimit, charset, logging, pool: poolOptions, } = options;
|
|
29
|
+
const maxConnections = poolOptions?.max ?? connectionLimit ?? 10;
|
|
30
|
+
const pool = mysql.createPool({
|
|
31
|
+
host,
|
|
32
|
+
user: username,
|
|
33
|
+
password,
|
|
34
|
+
database,
|
|
35
|
+
port,
|
|
36
|
+
dateStrings: datesStrings,
|
|
37
|
+
connectionLimit: maxConnections,
|
|
38
|
+
charset: charset ?? "utf8mb4",
|
|
39
|
+
});
|
|
40
|
+
this.isDebug = !!logging;
|
|
41
|
+
this.pool = pool;
|
|
42
|
+
}
|
|
43
|
+
catch (e) {
|
|
44
|
+
throw new Error(`MySQL 연결에 실패했습니다. ${e}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
async getConnection() {
|
|
48
|
+
if (!this.pool) {
|
|
49
|
+
throw new PoolNotFound_1.PoolNotFound();
|
|
50
|
+
}
|
|
51
|
+
return new Promise((resolve, reject) => {
|
|
52
|
+
this.pool?.getConnection((error, connection) => {
|
|
53
|
+
if (error) {
|
|
54
|
+
reject(error);
|
|
55
|
+
}
|
|
56
|
+
resolve(connection);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
async acquireConnection() {
|
|
61
|
+
const raw = await this.getConnection();
|
|
62
|
+
return new MysqlConnection_1.MysqlConnection(raw);
|
|
63
|
+
}
|
|
64
|
+
async runTestSql() {
|
|
65
|
+
if (!this.pool) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
await this.query((0, sql_template_tag_1.default) `SELECT 1 + 1`);
|
|
69
|
+
}
|
|
70
|
+
async query(rawSql, connection) {
|
|
71
|
+
return new Promise((resolve, reject) => {
|
|
72
|
+
if (!this.pool) {
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
const qb = connection ? connection : this.pool;
|
|
76
|
+
if (typeof rawSql === "string") {
|
|
77
|
+
qb.query(rawSql, (error, results, fields) => {
|
|
78
|
+
if (error) {
|
|
79
|
+
reject(error);
|
|
80
|
+
}
|
|
81
|
+
if (this.isDebug) {
|
|
82
|
+
this.logger.info(`Query: ${rawSql}`);
|
|
83
|
+
}
|
|
84
|
+
if (connection) {
|
|
85
|
+
resolve({ results, fields, error });
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
resolve(results);
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
const { sql, values } = rawSql;
|
|
94
|
+
qb.query(sql, values, (error, results, fields) => {
|
|
95
|
+
if (error) {
|
|
96
|
+
reject(error);
|
|
97
|
+
}
|
|
98
|
+
if (this.isDebug) {
|
|
99
|
+
this.logger.info(`Query: ${sql}, # ${JSON.stringify(values)}`);
|
|
100
|
+
this.logger.info(`Results: ${results}`);
|
|
101
|
+
this.logger.info(`Error: ${JSON.stringify(error)}`);
|
|
102
|
+
}
|
|
103
|
+
if (connection) {
|
|
104
|
+
resolve({ results, fields, error });
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
resolve(results);
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
async close() {
|
|
114
|
+
return new Promise((resolve, reject) => {
|
|
115
|
+
if (!this.pool) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
this.pool.end((error) => {
|
|
119
|
+
if (error) {
|
|
120
|
+
reject(error);
|
|
121
|
+
}
|
|
122
|
+
resolve();
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
async setTransactionIsolationLevel(connection, level) {
|
|
127
|
+
return new Promise((resolve, reject) => {
|
|
128
|
+
if (!connection) {
|
|
129
|
+
reject(new ConnectionNotFound_1.ConnectionNotFound());
|
|
130
|
+
}
|
|
131
|
+
connection.query(`SET TRANSACTION ISOLATION LEVEL ${level}`, (error) => {
|
|
132
|
+
if (error) {
|
|
133
|
+
reject(error);
|
|
134
|
+
}
|
|
135
|
+
resolve();
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
async startTransaction(connection, level = "READ COMMITTED") {
|
|
140
|
+
return new Promise((resolve, reject) => {
|
|
141
|
+
if (!connection) {
|
|
142
|
+
reject(new ConnectionNotFound_1.ConnectionNotFound());
|
|
143
|
+
}
|
|
144
|
+
this.setTransactionIsolationLevel(connection, level)
|
|
145
|
+
.then(() => {
|
|
146
|
+
connection.beginTransaction((error) => {
|
|
147
|
+
if (error) {
|
|
148
|
+
reject(error);
|
|
149
|
+
}
|
|
150
|
+
resolve();
|
|
151
|
+
});
|
|
152
|
+
})
|
|
153
|
+
.catch((error) => {
|
|
154
|
+
reject(error);
|
|
155
|
+
});
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
async rollback(connection) {
|
|
159
|
+
return new Promise((resolve, reject) => {
|
|
160
|
+
if (!connection) {
|
|
161
|
+
reject(new ConnectionNotFound_1.ConnectionNotFound());
|
|
162
|
+
}
|
|
163
|
+
connection.rollback(() => {
|
|
164
|
+
connection.query("SET autocommit = 1", () => {
|
|
165
|
+
connection.release();
|
|
166
|
+
resolve();
|
|
167
|
+
});
|
|
168
|
+
});
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
async commit(connection) {
|
|
172
|
+
return new Promise((resolve, reject) => {
|
|
173
|
+
if (!connection) {
|
|
174
|
+
reject(new ConnectionNotFound_1.ConnectionNotFound());
|
|
175
|
+
}
|
|
176
|
+
connection.commit((error) => {
|
|
177
|
+
if (error) {
|
|
178
|
+
connection.rollback(() => {
|
|
179
|
+
connection.query("SET autocommit = 1", () => {
|
|
180
|
+
connection.release();
|
|
181
|
+
reject(error);
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
connection.query("SET autocommit = 1", () => {
|
|
187
|
+
connection.release();
|
|
188
|
+
resolve();
|
|
189
|
+
});
|
|
190
|
+
});
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
exports.MySqlConnector = MySqlConnector;
|
|
195
|
+
//# sourceMappingURL=MySqlConnector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlConnector.js","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlConnector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { IConnector } from "../../core/IConnector";
|
|
2
|
+
import { IDataSource } from "../IDataSource";
|
|
3
|
+
import { TRANSACTION_ISOLATION_LEVEL } from "../IsolationLevel";
|
|
4
|
+
export declare class MySqlDataSource implements IDataSource {
|
|
5
|
+
private readonly connector;
|
|
6
|
+
private connection?;
|
|
7
|
+
constructor(connector: IConnector);
|
|
8
|
+
createConnection(): Promise<void>;
|
|
9
|
+
close(): Promise<void>;
|
|
10
|
+
startTransaction(level?: TRANSACTION_ISOLATION_LEVEL): Promise<void>;
|
|
11
|
+
rollback(): Promise<void>;
|
|
12
|
+
commit(): Promise<void>;
|
|
13
|
+
query(sql: string): Promise<any>;
|
|
14
|
+
savepoint(name: string): Promise<void>;
|
|
15
|
+
rollbackTo(name: string): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=MySqlDataSource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlDataSource.d.ts","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlDataSource.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAGhE,qBAAa,eAAgB,YAAW,WAAW;IAGrC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFtC,OAAO,CAAC,UAAU,CAAC,CAAa;gBAEH,SAAS,EAAE,UAAU;IAE5C,gBAAgB;IAQhB,KAAK;IAUL,gBAAgB,CAAC,KAAK,CAAC,EAAE,2BAA2B;IAQpD,QAAQ;IASR,MAAM;IASN,KAAK,CAAC,GAAG,EAAE,MAAM;IAQjB,SAAS,CAAC,IAAI,EAAE,MAAM;IAQtB,UAAU,CAAC,IAAI,EAAE,MAAM;CAO9B"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MySqlDataSource = void 0;
|
|
4
|
+
const MySqlConnectionError_1 = require("./MySqlConnectionError");
|
|
5
|
+
class MySqlDataSource {
|
|
6
|
+
constructor(connector) {
|
|
7
|
+
this.connector = connector;
|
|
8
|
+
}
|
|
9
|
+
async createConnection() {
|
|
10
|
+
this.connection = await this.connector.getConnection();
|
|
11
|
+
if (!this.connection) {
|
|
12
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
async close() {
|
|
16
|
+
if (!this.connection) {
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const conn = this.connection;
|
|
20
|
+
this.connection = undefined;
|
|
21
|
+
conn.release();
|
|
22
|
+
}
|
|
23
|
+
async startTransaction(level) {
|
|
24
|
+
if (!this.connection) {
|
|
25
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
26
|
+
}
|
|
27
|
+
await this.connector.startTransaction(this.connection, level);
|
|
28
|
+
}
|
|
29
|
+
async rollback() {
|
|
30
|
+
if (!this.connection) {
|
|
31
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
32
|
+
}
|
|
33
|
+
await this.connector.rollback(this.connection);
|
|
34
|
+
this.connection = undefined;
|
|
35
|
+
}
|
|
36
|
+
async commit() {
|
|
37
|
+
if (!this.connection) {
|
|
38
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
39
|
+
}
|
|
40
|
+
await this.connector.commit(this.connection);
|
|
41
|
+
this.connection = undefined;
|
|
42
|
+
}
|
|
43
|
+
async query(sql) {
|
|
44
|
+
if (!this.connection) {
|
|
45
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
46
|
+
}
|
|
47
|
+
return await this.connector.query(sql, this.connection);
|
|
48
|
+
}
|
|
49
|
+
async savepoint(name) {
|
|
50
|
+
if (!this.connection) {
|
|
51
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
52
|
+
}
|
|
53
|
+
await this.query(`SAVEPOINT ${name}`);
|
|
54
|
+
}
|
|
55
|
+
async rollbackTo(name) {
|
|
56
|
+
if (!this.connection) {
|
|
57
|
+
throw new MySqlConnectionError_1.MySqlConnectionError();
|
|
58
|
+
}
|
|
59
|
+
await this.query(`ROLLBACK TO ${name}`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.MySqlDataSource = MySqlDataSource;
|
|
63
|
+
//# sourceMappingURL=MySqlDataSource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlDataSource.js","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlDataSource.ts"],"names":[],"mappings":";;;AAKA,iEAA8D;AAE9D,MAAa,eAAe;IAG1B,YAA6B,SAAqB;QAArB,cAAS,GAAT,SAAS,CAAY;IAAG,CAAC;IAEtD,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;QAEvD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAmC;QACxD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,GAAW;QACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1D,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,2CAAoB,EAAE,CAAC;QACnC,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAxED,0CAwEC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { IConnector } from "../../core/IConnector";
|
|
2
|
+
import { MysqlSchemaInterface } from "./BaseSchema";
|
|
3
|
+
import { ColumnType } from "../../decorators";
|
|
4
|
+
import { ISqlDriver } from "../SqlDriver";
|
|
5
|
+
import { SchemaOptions } from "../../types/SchemaOption";
|
|
6
|
+
export declare class MySqlDriver implements ISqlDriver {
|
|
7
|
+
private readonly connector;
|
|
8
|
+
private readonly clientType;
|
|
9
|
+
constructor(connector: IConnector, clientType?: string);
|
|
10
|
+
hasTable(name: string): Promise<any>;
|
|
11
|
+
executeRaw(sqlStr: string): Promise<any>;
|
|
12
|
+
addPrimaryKey(tableName: string, columnName: string): Promise<any>;
|
|
13
|
+
addAutoIncrement(tableName: string, columnName: string): Promise<any>;
|
|
14
|
+
dropPrimaryKey(tableName: string): Promise<any>;
|
|
15
|
+
addUniqueKey(tableName: string, columnName: string): Promise<any>;
|
|
16
|
+
dropUniqueKey(tableName: string, columnName: string): Promise<any>;
|
|
17
|
+
addColumn(tableName: string, columnName: string, columnType: string): Promise<any>;
|
|
18
|
+
dropColumn(tableName: string, columnName: string): Promise<any>;
|
|
19
|
+
addForeignKey(tableName: string, columnName: string, foreignTableName: string, foreignColumnName: string): Promise<any>;
|
|
20
|
+
generateForeignKeyName(sourceTable: string, targetTable: string, sourceColumn: string): string;
|
|
21
|
+
dropForeignKey(tableName: string, columnName: string): Promise<any>;
|
|
22
|
+
addIndex(tableName: string, columnName: string, indexName: string): Promise<any>;
|
|
23
|
+
hasIndex(tableName: string, indexName: string): Promise<any>;
|
|
24
|
+
dropIndex(tableName: string, indexName: string): Promise<any>;
|
|
25
|
+
getSchemas(tableName: string): Promise<MysqlSchemaInterface[]>;
|
|
26
|
+
getIndexes(tableName: string): Promise<MysqlSchemaInterface[]>;
|
|
27
|
+
getForeignKeys(tableName: string): Promise<MysqlSchemaInterface[]>;
|
|
28
|
+
getPrimaryKeys(tableName: string): Promise<MysqlSchemaInterface[]>;
|
|
29
|
+
createTable(tableName: string, columns: SchemaOptions[]): Promise<any>;
|
|
30
|
+
wrap(columnName: string): string;
|
|
31
|
+
getColumnType(type: any): string;
|
|
32
|
+
castType(type: ColumnType): string;
|
|
33
|
+
isMySqlFamily(): boolean;
|
|
34
|
+
setQueryTimeout(ms: number): string;
|
|
35
|
+
supportsExplain(): boolean;
|
|
36
|
+
buildExplainSql(selectSql: string): string;
|
|
37
|
+
buildUpsertSql(tableName: string, columns: string[], conflictColumns: string[], updateColumns: string[]): string;
|
|
38
|
+
hasColumn(tableName: string, columnName: string): Promise<boolean>;
|
|
39
|
+
hasForeignKey(tableName: string, constraintName: string): Promise<boolean>;
|
|
40
|
+
addCompositeUniqueIndex(tableName: string, columns: string[], indexName: string): Promise<any>;
|
|
41
|
+
acquireAdvisoryLock(lockId: string, timeoutMs?: number): Promise<boolean>;
|
|
42
|
+
releaseAdvisoryLock(lockId: string): Promise<void>;
|
|
43
|
+
createSavepointSql(name: string): string;
|
|
44
|
+
rollbackToSavepointSql(name: string): string;
|
|
45
|
+
releaseSavepointSql(name: string): string;
|
|
46
|
+
clear(tableName: string): Promise<any>;
|
|
47
|
+
getForUpdateNoWait(): string;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=MySqlDriver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlDriver.d.ts","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.MySqlDriver = void 0;
|
|
37
|
+
const sql_template_tag_1 = __importStar(require("sql-template-tag"));
|
|
38
|
+
const errors_1 = require("../../errors");
|
|
39
|
+
const SchemaGenerator_1 = require("../../core/generators/SchemaGenerator");
|
|
40
|
+
class MySqlDriver {
|
|
41
|
+
constructor(connector, clientType = "mysql") {
|
|
42
|
+
this.connector = connector;
|
|
43
|
+
this.clientType = clientType;
|
|
44
|
+
}
|
|
45
|
+
hasTable(name) {
|
|
46
|
+
return this.connector.query((0, sql_template_tag_1.default) `SHOW TABLES LIKE ${name}`);
|
|
47
|
+
}
|
|
48
|
+
executeRaw(sqlStr) {
|
|
49
|
+
return this.connector.query(sqlStr);
|
|
50
|
+
}
|
|
51
|
+
addPrimaryKey(tableName, columnName) {
|
|
52
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} ADD PRIMARY KEY (${this.wrap(columnName)})`);
|
|
53
|
+
}
|
|
54
|
+
addAutoIncrement(tableName, columnName) {
|
|
55
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} MODIFY ${this.wrap(columnName)} INT AUTO_INCREMENT`);
|
|
56
|
+
}
|
|
57
|
+
dropPrimaryKey(tableName) {
|
|
58
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} DROP PRIMARY KEY`);
|
|
59
|
+
}
|
|
60
|
+
addUniqueKey(tableName, columnName) {
|
|
61
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} ADD UNIQUE (${this.wrap(columnName)})`);
|
|
62
|
+
}
|
|
63
|
+
dropUniqueKey(tableName, columnName) {
|
|
64
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} DROP INDEX ${this.wrap(columnName)}`);
|
|
65
|
+
}
|
|
66
|
+
addColumn(tableName, columnName, columnType) {
|
|
67
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} ADD ${this.wrap(columnName)} ${columnType}`);
|
|
68
|
+
}
|
|
69
|
+
dropColumn(tableName, columnName) {
|
|
70
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} DROP COLUMN ${this.wrap(columnName)}`);
|
|
71
|
+
}
|
|
72
|
+
addForeignKey(tableName, columnName, foreignTableName, foreignColumnName) {
|
|
73
|
+
const foreignKeyName = this.generateForeignKeyName(tableName, foreignTableName, columnName);
|
|
74
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} ADD CONSTRAINT ${foreignKeyName} FOREIGN KEY (${this.wrap(columnName)}) REFERENCES ${this.wrap(foreignTableName)}(${this.wrap(foreignColumnName)}) ON DELETE NO ACTION ON UPDATE NO ACTION`);
|
|
75
|
+
}
|
|
76
|
+
generateForeignKeyName(sourceTable, targetTable, sourceColumn) {
|
|
77
|
+
return SchemaGenerator_1.SchemaGenerator.generateForeignKeyName(sourceTable, sourceColumn, targetTable);
|
|
78
|
+
}
|
|
79
|
+
dropForeignKey(tableName, columnName) {
|
|
80
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} DROP FOREIGN KEY ${this.wrap(columnName)}`);
|
|
81
|
+
}
|
|
82
|
+
addIndex(tableName, columnName, indexName) {
|
|
83
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} ADD INDEX ${this.wrap(indexName)} (${this.wrap(columnName)})`);
|
|
84
|
+
}
|
|
85
|
+
hasIndex(tableName, indexName) {
|
|
86
|
+
return this.connector.query((0, sql_template_tag_1.default) `SELECT COUNT(*) as count FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ${tableName} AND INDEX_NAME = ${indexName}`);
|
|
87
|
+
}
|
|
88
|
+
dropIndex(tableName, indexName) {
|
|
89
|
+
return this.connector.query(`ALTER TABLE ${this.wrap(tableName)} DROP INDEX ${this.wrap(indexName)}`);
|
|
90
|
+
}
|
|
91
|
+
getSchemas(tableName) {
|
|
92
|
+
return this.connector.query(`SHOW COLUMNS FROM ${this.wrap(tableName)}`);
|
|
93
|
+
}
|
|
94
|
+
getIndexes(tableName) {
|
|
95
|
+
return this.connector.query(`SHOW INDEXES FROM ${this.wrap(tableName)}`);
|
|
96
|
+
}
|
|
97
|
+
getForeignKeys(tableName) {
|
|
98
|
+
return this.connector.query((0, sql_template_tag_1.default) `SELECT COLUMN_NAME, REFERENCED_TABLE_NAME, REFERENCED_COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ${tableName} AND REFERENCED_TABLE_NAME IS NOT NULL`);
|
|
99
|
+
}
|
|
100
|
+
getPrimaryKeys(tableName) {
|
|
101
|
+
return this.connector.query((0, sql_template_tag_1.default) `SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ${tableName} AND CONSTRAINT_NAME = 'PRIMARY'`);
|
|
102
|
+
}
|
|
103
|
+
createTable(tableName, columns) {
|
|
104
|
+
const columnsMap = columns.map((column) => {
|
|
105
|
+
const option = (column.options ?? {
|
|
106
|
+
type: "varchar",
|
|
107
|
+
length: 255,
|
|
108
|
+
nullable: false,
|
|
109
|
+
});
|
|
110
|
+
let type = this.castType(option.type ?? "varchar");
|
|
111
|
+
if (option.type === "boolean") {
|
|
112
|
+
type = type.replace("$n", option.length?.toString() ?? "1");
|
|
113
|
+
}
|
|
114
|
+
if (type.startsWith("DECIMAL")) {
|
|
115
|
+
if (option.precision !== undefined) {
|
|
116
|
+
if (option.precision > 65) {
|
|
117
|
+
throw new errors_1.Exception("MySQL에서 지원하는 DECIMAL 타입의 precision은 65 이하입니다.", 400);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
type = type.replace("$precision", option.precision?.toString() || "10");
|
|
121
|
+
type = type.replace("$scale", option.scale?.toString() || "2");
|
|
122
|
+
}
|
|
123
|
+
const alreadyHasParens = type.includes("(");
|
|
124
|
+
const nullable = option.nullable ?? false;
|
|
125
|
+
const typeWithLength = alreadyHasParens || !option.length ? type : `${type}(${option.length})`;
|
|
126
|
+
return (0, sql_template_tag_1.raw)(`${this.wrap(column.name)} ${typeWithLength} ${nullable ? "NULL" : "NOT NULL"} ${option.primary ? "PRIMARY KEY" : ""} ${option.autoIncrement ? "AUTO_INCREMENT" : ""}`);
|
|
127
|
+
});
|
|
128
|
+
const result = (0, sql_template_tag_1.default) `CREATE TABLE IF NOT EXISTS ${(0, sql_template_tag_1.raw)(this.wrap(tableName))} (${(0, sql_template_tag_1.join)(columnsMap, ",")})`;
|
|
129
|
+
return this.connector.query(result.text);
|
|
130
|
+
}
|
|
131
|
+
wrap(columnName) {
|
|
132
|
+
return `\`${columnName.replace(/`/g, "``")}\``;
|
|
133
|
+
}
|
|
134
|
+
getColumnType(type) {
|
|
135
|
+
switch (type) {
|
|
136
|
+
case String:
|
|
137
|
+
return "VARCHAR";
|
|
138
|
+
case Number:
|
|
139
|
+
return "INT";
|
|
140
|
+
case Boolean:
|
|
141
|
+
return "BOOLEAN";
|
|
142
|
+
case Date:
|
|
143
|
+
return "DATETIME";
|
|
144
|
+
case Buffer:
|
|
145
|
+
return "BLOB";
|
|
146
|
+
default:
|
|
147
|
+
return "TEXT";
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
castType(type) {
|
|
151
|
+
switch (type) {
|
|
152
|
+
case "varchar":
|
|
153
|
+
return "VARCHAR";
|
|
154
|
+
case "int":
|
|
155
|
+
case "number":
|
|
156
|
+
return "INT";
|
|
157
|
+
case "boolean":
|
|
158
|
+
return "TINYINT($n)";
|
|
159
|
+
case "datetime":
|
|
160
|
+
return "DATETIME";
|
|
161
|
+
case "date":
|
|
162
|
+
return "DATE";
|
|
163
|
+
case "timestamp":
|
|
164
|
+
return "TIMESTAMP";
|
|
165
|
+
case "float":
|
|
166
|
+
return "FLOAT";
|
|
167
|
+
case "double":
|
|
168
|
+
return "DECIMAL($precision, $scale)";
|
|
169
|
+
case "blob":
|
|
170
|
+
return "BLOB";
|
|
171
|
+
case "text":
|
|
172
|
+
return "TEXT";
|
|
173
|
+
case "longtext":
|
|
174
|
+
return "LONGTEXT";
|
|
175
|
+
case "bigint":
|
|
176
|
+
return "BIGINT";
|
|
177
|
+
case "json":
|
|
178
|
+
return "JSON";
|
|
179
|
+
case "char":
|
|
180
|
+
return "CHAR";
|
|
181
|
+
case "enum":
|
|
182
|
+
return "ENUM";
|
|
183
|
+
case "array":
|
|
184
|
+
return "JSON";
|
|
185
|
+
case "jsonb":
|
|
186
|
+
return "JSON";
|
|
187
|
+
default:
|
|
188
|
+
return type;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
isMySqlFamily() {
|
|
192
|
+
return ["mysql", "mariadb"].includes(this.clientType);
|
|
193
|
+
}
|
|
194
|
+
setQueryTimeout(ms) {
|
|
195
|
+
return `SET SESSION max_execution_time = ${Math.max(0, Math.floor(ms))}`;
|
|
196
|
+
}
|
|
197
|
+
supportsExplain() {
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
buildExplainSql(selectSql) {
|
|
201
|
+
return `EXPLAIN ${selectSql}`;
|
|
202
|
+
}
|
|
203
|
+
buildUpsertSql(tableName, columns, conflictColumns, updateColumns) {
|
|
204
|
+
const columnList = columns.join(", ");
|
|
205
|
+
const valuePlaceholders = columns.map(() => "?").join(", ");
|
|
206
|
+
const updateSet = updateColumns
|
|
207
|
+
.map((col) => `${col} = VALUES(${col})`)
|
|
208
|
+
.join(", ");
|
|
209
|
+
return `INSERT INTO ${tableName} (${columnList}) VALUES (${valuePlaceholders}) ON DUPLICATE KEY UPDATE ${updateSet}`;
|
|
210
|
+
}
|
|
211
|
+
async hasColumn(tableName, columnName) {
|
|
212
|
+
const rows = await this.connector.query((0, sql_template_tag_1.default) `SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ${tableName} AND COLUMN_NAME = ${columnName}`);
|
|
213
|
+
return Array.isArray(rows) && rows.length > 0;
|
|
214
|
+
}
|
|
215
|
+
async hasForeignKey(tableName, constraintName) {
|
|
216
|
+
const rows = await this.connector.query((0, sql_template_tag_1.default) `SELECT CONSTRAINT_NAME FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = ${tableName} AND CONSTRAINT_NAME = ${constraintName} AND CONSTRAINT_TYPE = 'FOREIGN KEY'`);
|
|
217
|
+
return Array.isArray(rows) && rows.length > 0;
|
|
218
|
+
}
|
|
219
|
+
addCompositeUniqueIndex(tableName, columns, indexName) {
|
|
220
|
+
const columnList = columns.map((col) => this.wrap(col)).join(", ");
|
|
221
|
+
return this.connector.query(`CREATE UNIQUE INDEX ${this.wrap(indexName)} ON ${this.wrap(tableName)} (${columnList})`);
|
|
222
|
+
}
|
|
223
|
+
async acquireAdvisoryLock(lockId, timeoutMs = 0) {
|
|
224
|
+
const timeoutSec = Math.max(0, Math.floor(timeoutMs / 1000));
|
|
225
|
+
const result = await this.connector.query((0, sql_template_tag_1.default) `SELECT GET_LOCK(${lockId}, ${timeoutSec}) AS lock_result`);
|
|
226
|
+
const rows = Array.isArray(result) ? result : result?.results ?? result?.rows ?? [];
|
|
227
|
+
if (rows.length === 0)
|
|
228
|
+
return false;
|
|
229
|
+
return rows[0]?.lock_result === 1;
|
|
230
|
+
}
|
|
231
|
+
async releaseAdvisoryLock(lockId) {
|
|
232
|
+
await this.connector.query((0, sql_template_tag_1.default) `SELECT RELEASE_LOCK(${lockId})`);
|
|
233
|
+
}
|
|
234
|
+
createSavepointSql(name) {
|
|
235
|
+
return `SAVEPOINT ${this.wrap(name)}`;
|
|
236
|
+
}
|
|
237
|
+
rollbackToSavepointSql(name) {
|
|
238
|
+
return `ROLLBACK TO SAVEPOINT ${this.wrap(name)}`;
|
|
239
|
+
}
|
|
240
|
+
releaseSavepointSql(name) {
|
|
241
|
+
return `RELEASE SAVEPOINT ${this.wrap(name)}`;
|
|
242
|
+
}
|
|
243
|
+
async clear(tableName) {
|
|
244
|
+
await this.connector.query(`SET FOREIGN_KEY_CHECKS = 0`);
|
|
245
|
+
try {
|
|
246
|
+
return await this.connector.query(`TRUNCATE TABLE ${this.wrap(tableName)}`);
|
|
247
|
+
}
|
|
248
|
+
finally {
|
|
249
|
+
await this.connector.query(`SET FOREIGN_KEY_CHECKS = 1`);
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
getForUpdateNoWait() {
|
|
253
|
+
if (!this.isMySqlFamily()) {
|
|
254
|
+
return " FOR UPDATE";
|
|
255
|
+
}
|
|
256
|
+
return " FOR UPDATE NOWAIT";
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
exports.MySqlDriver = MySqlDriver;
|
|
260
|
+
//# sourceMappingURL=MySqlDriver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlDriver.js","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlDriver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ITenantMigrationRunner, TenantSyncResult } from "../ITenantMigrationRunner";
|
|
2
|
+
export declare class MySqlTenantMigrationRunner implements ITenantMigrationRunner {
|
|
3
|
+
private unsupported;
|
|
4
|
+
discoverSchemas(): Promise<string[]>;
|
|
5
|
+
ensureSchema(_tenantId: string): Promise<void>;
|
|
6
|
+
syncTenantSchemas(_tenantIds: string[]): Promise<TenantSyncResult>;
|
|
7
|
+
isProvisioned(_tenantId: string): boolean;
|
|
8
|
+
getProvisionedSchemas(): string[];
|
|
9
|
+
reset(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=MySqlTenantMigrationRunner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MySqlTenantMigrationRunner.d.ts","sourceRoot":"","sources":["../../../src/dialects/mysql/MySqlTenantMigrationRunner.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AAWnC,qBAAa,0BAA2B,YAAW,sBAAsB;IACvE,OAAO,CAAC,WAAW;IAQnB,eAAe,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAIpC,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlE,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIzC,qBAAqB,IAAI,MAAM,EAAE;IAIjC,KAAK,IAAI,IAAI;CAGd"}
|