typeorm 1.1.1 → 1.1.2
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/browser/data-source/DataSource.d.ts +1 -0
- package/browser/data-source/DataSource.js +56 -29
- package/browser/data-source/DataSource.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachDriver.js +9 -4
- package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/browser/driver/cockroachdb/CockroachQueryRunner.js +71 -31
- package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/browser/driver/mysql/MysqlQueryRunner.js +132 -84
- package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/browser/driver/oracle/OracleQueryRunner.js +84 -40
- package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/browser/driver/postgres/PostgresDriver.js +6 -3
- package/browser/driver/postgres/PostgresDriver.js.map +1 -1
- package/browser/driver/postgres/PostgresQueryRunner.js +117 -72
- package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/browser/driver/sap/SapQueryRunner.js +24 -20
- package/browser/driver/sap/SapQueryRunner.js.map +1 -1
- package/browser/driver/spanner/SpannerQueryRunner.js +20 -16
- package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +52 -31
- package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/browser/driver/sqlserver/SqlServerQueryRunner.js +95 -49
- package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/browser/entity-manager/EntityManager.d.ts +6 -0
- package/browser/entity-manager/EntityManager.js +6 -0
- package/browser/entity-manager/EntityManager.js.map +1 -1
- package/browser/metadata-builder/EntityMetadataBuilder.js +5 -2
- package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/browser/persistence/tree/ClosureSubjectExecutor.js +2 -3
- package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +15 -5
- package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
- package/data-source/DataSource.d.ts +1 -0
- package/data-source/DataSource.js +56 -29
- package/data-source/DataSource.js.map +1 -1
- package/driver/cockroachdb/CockroachDriver.js +9 -4
- package/driver/cockroachdb/CockroachDriver.js.map +1 -1
- package/driver/cockroachdb/CockroachQueryRunner.js +71 -31
- package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
- package/driver/mysql/MysqlQueryRunner.js +132 -84
- package/driver/mysql/MysqlQueryRunner.js.map +1 -1
- package/driver/oracle/OracleQueryRunner.js +84 -40
- package/driver/oracle/OracleQueryRunner.js.map +1 -1
- package/driver/postgres/PostgresDriver.js +6 -3
- package/driver/postgres/PostgresDriver.js.map +1 -1
- package/driver/postgres/PostgresQueryRunner.js +117 -72
- package/driver/postgres/PostgresQueryRunner.js.map +1 -1
- package/driver/sap/SapQueryRunner.js +24 -20
- package/driver/sap/SapQueryRunner.js.map +1 -1
- package/driver/spanner/SpannerQueryRunner.js +20 -16
- package/driver/spanner/SpannerQueryRunner.js.map +1 -1
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +52 -31
- package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
- package/driver/sqlserver/SqlServerQueryRunner.js +95 -49
- package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
- package/entity-manager/EntityManager.d.ts +6 -0
- package/entity-manager/EntityManager.js +6 -0
- package/entity-manager/EntityManager.js.map +1 -1
- package/metadata-builder/EntityMetadataBuilder.js +5 -2
- package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
- package/package.json +3 -3
- package/persistence/tree/ClosureSubjectExecutor.js +2 -3
- package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +15 -5
- package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
|
@@ -312,21 +312,23 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
312
312
|
upQueries.push(this.dropTableSql(table, ifExists));
|
|
313
313
|
downQueries.push(this.createTableSql(table, createForeignKeys));
|
|
314
314
|
// if table had columns with generated type, we must remove the expression from the metadata table
|
|
315
|
-
const generatedColumns = table.columns.filter((column) => column.generatedType
|
|
315
|
+
const generatedColumns = table.columns.filter((column) => column.generatedType);
|
|
316
316
|
for (const column of generatedColumns) {
|
|
317
317
|
const deleteQuery = this.deleteTypeormMetadataSql({
|
|
318
318
|
table: table.name,
|
|
319
319
|
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
320
320
|
name: column.name,
|
|
321
321
|
});
|
|
322
|
-
const insertQuery = this.insertTypeormMetadataSql({
|
|
323
|
-
table: table.name,
|
|
324
|
-
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
325
|
-
name: column.name,
|
|
326
|
-
value: column.asExpression,
|
|
327
|
-
});
|
|
328
322
|
upQueries.push(deleteQuery);
|
|
329
|
-
|
|
323
|
+
if (column.asExpression) {
|
|
324
|
+
const insertQuery = this.insertTypeormMetadataSql({
|
|
325
|
+
table: table.name,
|
|
326
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
327
|
+
name: column.name,
|
|
328
|
+
value: column.asExpression,
|
|
329
|
+
});
|
|
330
|
+
downQueries.push(insertQuery);
|
|
331
|
+
}
|
|
330
332
|
}
|
|
331
333
|
await this.executeQueries(upQueries, downQueries);
|
|
332
334
|
}
|
|
@@ -401,6 +403,20 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
401
403
|
return;
|
|
402
404
|
index.name = this.dataSource.namingStrategy.indexName(newTable, index.columnNames, index.where);
|
|
403
405
|
});
|
|
406
|
+
const hasGeneratedColumns = oldTable.columns.some((col) => col.generatedType);
|
|
407
|
+
if (hasGeneratedColumns) {
|
|
408
|
+
const updateQuery = this.updateTypeormMetadataSql({
|
|
409
|
+
table: oldTable.name,
|
|
410
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
411
|
+
valueToSet: { table: newTable.name },
|
|
412
|
+
});
|
|
413
|
+
const revertUpdateQuery = this.updateTypeormMetadataSql({
|
|
414
|
+
table: newTable.name,
|
|
415
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
416
|
+
valueToSet: { table: oldTable.name },
|
|
417
|
+
});
|
|
418
|
+
await this.executeQueries(updateQuery, revertUpdateQuery);
|
|
419
|
+
}
|
|
404
420
|
// rename old table;
|
|
405
421
|
oldTable.name = newTable.name;
|
|
406
422
|
// recreate table with new constraint names
|
|
@@ -1589,7 +1605,6 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
1589
1605
|
// we should delete record from "typeorm_metadata" if generated column was removed
|
|
1590
1606
|
// or it was changed to non-generated
|
|
1591
1607
|
return (column.generatedType &&
|
|
1592
|
-
column.asExpression &&
|
|
1593
1608
|
(!newTableColumn ||
|
|
1594
1609
|
(!newTableColumn.generatedType &&
|
|
1595
1610
|
!newTableColumn.asExpression)));
|
|
@@ -1600,14 +1615,16 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
1600
1615
|
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1601
1616
|
name: column.name,
|
|
1602
1617
|
});
|
|
1603
|
-
const insertQuery = this.insertTypeormMetadataSql({
|
|
1604
|
-
table: oldTable.name,
|
|
1605
|
-
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1606
|
-
name: column.name,
|
|
1607
|
-
value: column.asExpression,
|
|
1608
|
-
});
|
|
1609
1618
|
upQueries.push(deleteQuery);
|
|
1610
|
-
|
|
1619
|
+
if (column.asExpression) {
|
|
1620
|
+
const insertQuery = this.insertTypeormMetadataSql({
|
|
1621
|
+
table: oldTable.name,
|
|
1622
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1623
|
+
name: column.name,
|
|
1624
|
+
value: column.asExpression,
|
|
1625
|
+
});
|
|
1626
|
+
downQueries.push(insertQuery);
|
|
1627
|
+
}
|
|
1611
1628
|
});
|
|
1612
1629
|
// Step 2: add data for new generated columns
|
|
1613
1630
|
newTable.columns
|
|
@@ -1631,7 +1648,7 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
1631
1648
|
});
|
|
1632
1649
|
// Step 3: update changed expressions
|
|
1633
1650
|
newTable.columns
|
|
1634
|
-
.filter((column) => column.generatedType
|
|
1651
|
+
.filter((column) => column.generatedType)
|
|
1635
1652
|
.forEach((column) => {
|
|
1636
1653
|
const oldColumn = oldTable.columns.find((c) => c.name === column.name &&
|
|
1637
1654
|
c.generatedType &&
|
|
@@ -1645,27 +1662,31 @@ class AbstractSqliteQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
|
|
|
1645
1662
|
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1646
1663
|
name: oldColumn.name,
|
|
1647
1664
|
});
|
|
1648
|
-
const insertQuery = this.insertTypeormMetadataSql({
|
|
1649
|
-
table: newTable.name,
|
|
1650
|
-
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1651
|
-
name: column.name,
|
|
1652
|
-
value: column.asExpression,
|
|
1653
|
-
});
|
|
1654
1665
|
upQueries.push(deleteQuery);
|
|
1655
|
-
|
|
1666
|
+
if (column.asExpression) {
|
|
1667
|
+
const insertQuery = this.insertTypeormMetadataSql({
|
|
1668
|
+
table: newTable.name,
|
|
1669
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1670
|
+
name: column.name,
|
|
1671
|
+
value: column.asExpression,
|
|
1672
|
+
});
|
|
1673
|
+
upQueries.push(insertQuery);
|
|
1674
|
+
}
|
|
1656
1675
|
// revert update
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1662
|
-
|
|
1676
|
+
if (oldColumn.asExpression) {
|
|
1677
|
+
const revertInsertQuery = this.insertTypeormMetadataSql({
|
|
1678
|
+
table: newTable.name,
|
|
1679
|
+
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1680
|
+
name: oldColumn.name,
|
|
1681
|
+
value: oldColumn.asExpression,
|
|
1682
|
+
});
|
|
1683
|
+
downQueries.push(revertInsertQuery);
|
|
1684
|
+
}
|
|
1663
1685
|
const revertDeleteQuery = this.deleteTypeormMetadataSql({
|
|
1664
1686
|
table: oldTable.name,
|
|
1665
1687
|
type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
|
|
1666
1688
|
name: column.name,
|
|
1667
1689
|
});
|
|
1668
|
-
downQueries.push(revertInsertQuery);
|
|
1669
1690
|
downQueries.push(revertDeleteQuery);
|
|
1670
1691
|
});
|
|
1671
1692
|
await this.executeQueries(upQueries, downQueries);
|