Kononnable / typeorm-model-generator

Generates models for TypeORM from existing database.
MIT License
1.51k stars 281 forks source link

Unknown column type: set #91

Closed arthurchumak closed 4 years ago

arthurchumak commented 6 years ago

Mysql table column has datatype "SET('foo', 'bar')"

Unknown column type: set  table name: user column name: role
Error occured in typeorm-model-generator.
typeorm-model-generator@0.2.18  node@v6.13.0
If you think this is a bug please open an issue including this log on https://github.com/Kononnable/typeorm-model-generator/issues
Error
    at Object.LogError (/Users/ac/Projects/eschool/node_modules/typeorm-model-generator/dist/src/Utils.js:10:21)
    at response.filter.forEach.resp (/Users/ac/Projects/eschool/node_modules/typeorm-model-generator/dist/src/drivers/MysqlDriver.js:160:39)
    at Array.forEach (native)
    at entities.forEach.ent (/Users/ac/Projects/eschool/node_modules/typeorm-model-generator/dist/src/drivers/MysqlDriver.js:38:22)
    at Array.forEach (native)
    at MysqlDriver.<anonymous> (/Users/ac/Projects/eschool/node_modules/typeorm-model-generator/dist/src/drivers/MysqlDriver.js:33:22)
    at next (native)
    at fulfilled (/Users/ac/Projects/eschool/node_modules/typeorm-model-generator/dist/src/drivers/MysqlDriver.js:4:58)
    at process._tickCallback (internal/process/next_tick.js:109:7)
[2:44:31 PM] Typeorm model classes created.
Kononnable commented 6 years ago

I don't see support for set column in typeorm(column types). Column must be supported in typeorm before typeorm-model-generator - otherwise generator would generate broken entity models.

CatsMiaow commented 5 years ago
`daily_days` set('sun','mon','tue','wed','thu','fri','sat') NOT NULL DEFAULT ''
2018-12-14 2 53 19

sequelizejs does not support SET, but sequelize-auto is applies it as a string.

2018-12-14 2 53 28

I think, apply it as a string and warn it so that no errors occur.

CatsMiaow commented 5 years ago

https://github.com/typeorm/typeorm/issues/2779 https://github.com/typeorm/typeorm/pull/4538 https://github.com/typeorm/typeorm/blob/master/CHANGELOG.md#features

Maia-Everett commented 4 years ago

As a workaround, for now I've patched my local copy of the generator to map the set type to strings, and I join/split the sets manually.

Kononnable commented 4 years ago

Implemented in typeorm-model-generator@0.4.0