如何为@PrimaryColumn()设置AUTO_INCREMENT?

时间:2020-02-25 19:12:02

标签: node.js orm typeorm

如何为AUTO_INCREMENT设置@PrimaryColumn(),我知道@PrimaryGeneratedColumn()可以这样做,但是我想从double类型获得ID。是否有@PrimaryGeneratedColumn()类型的double?如果没有,我可以为AUTO_INCREMENT设置@PrimaryColumn()吗?

1 个答案:

答案 0 :(得分:3)

请使用此代码。

import {Entity, PrimaryGeneratedColumn} from 'typeorm';

@Entity()
export class SomeWhat{

    @PrimaryGeneratedColumn('increment')
    public id: number;
....

对于double ID,我们不能使用AUTO_INCREMENTAUTO_INCREMENT仅适用于int类型。

  • @PrimaryGeneratedColumn

    我们只能在AUTO_INCREMENT个装饰器上设置@PrimaryGeneratedColumn。 以下代码是@PrimaryGeneratedColumn的声明。 如您所见,我们可以使用两种策略(增量,uuid)。

    (typeorm / decorator / columns / PrimaryGeneratedColumn.d.ts)

    export declare function PrimaryGeneratedColumn(): Function;
    export declare function PrimaryGeneratedColumn(options: PrimaryGeneratedColumnNumericOptions): Function;
    export declare function PrimaryGeneratedColumn(strategy: "increment", options?: PrimaryGeneratedColumnNumericOptions): Function;
    export declare function PrimaryGeneratedColumn(strategy: "uuid", options?: PrimaryGeneratedColumnUUIDOptions): Function;
    
  • @PrimaryColumn

    但是在此@PrimaryColumn中,没有可用的策略。这只是将值转换为主键而不生成。

    (typeorm / decorator / columns / PrimaryColumn.d.ts)

    export declare function PrimaryColumn(options?: ColumnOptions): Function;
    export declare function PrimaryColumn(type?: ColumnType, options?: ColumnOptions): Function;
    
相关问题