PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да настроя nullable поле на база данни на NULL с typeorm?

След добра нощна почивка успях да разреша проблема си.

Typeorm задава типа на полетата на базата данни въз основа на въвеждането, което давате на променливите за вашите обекти в машинопис. Typeorm прехвърля кода по-долу към varchar поле в моята база данни на postgres, защото му дадох низ като тип в машинопис.

@Column({
    unique: true,
    nullable: true,
})
resetPasswordToken!: string;

Това е и моят проблем. Typeorm приема въвеждането на поле и се опитва да създаде това поле на базата данни въз основа на въвеждането, което чете. Докато кодът по-долу е правилен, typescript основно капсулира и двата типа в един обект и този обект е това, което се чете от Typeorm, причинявайки грешката, която получих.

resetPasswordToken!: string | null;

За да поправя проблема си, трябваше да посоча типа поле на базата данни изрично по следния начин:

@Column({
    type: 'text',
    unique: true,
    nullable: true,
})
resetPasswordToken!: string;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Странно съпоставяне с postgresql

  2. Открийте дали редът е актуализиран или вмъкнат

  3. Postgresql - една база данни за всеки или една база данни за всеки клиент

  4. Postgresql JSONB идва. Какво да използвам сега? Hstore? JSON? EAV?

  5. Грешка в механизма за заключване на PostgreSQL или неразбиране на механизма