当前版本

"typeorm": "^0.2.24"

"@nestjs/cli": "^7.0.0",

Entity

@Column()用法

# 指定为 int 类型
@Column("int")
# or
@Column({ type: "int" })

# 指定为 varchar 类型, 长度200个字符
@Column("varchar", { length: 200 })
# or
@Column({ type: "varchar", width: 200 })

# alias 将数据库真实字段名放在name里面
@Column({type:'int', name: 'user_id'}) 
userId: number;

复制代码
  • @Primaryolumn()主键
  • @PrimaryGeneratedColumn()自增主键
  • @Column("int")int型普通字段
  • @Column('tinyint')tinyint型普通字段
  •  
import { Entity, Column, PrimaryGeneratedColumn } from 'typeorm';

@Entity('user')// 对应的表名
export class User {
  @PrimaryGeneratedColumn() 
  id: number;
  
  @Column('int') 
  user_id: number;

  @Column({ length: 255 })
  title: string;

  @Column('text') 
  description: string;

  @Column('tinyint') 
  is_finish: boolean;

  @Column('int') 
  create_time: number;  
  
  @Column('int') 
  update_time: number;
}

// Column types for mysql / mariadb
int, tinyint, smallint, mediumint, bigint, float, double, dec, 
decimal, numeric, date, datetime, timestamp, time, year, char, 
varchar, nvarchar, text, tinytext, mediumtext, blob, longtext, 
tinyblob, mediumblob, longblob, enum, json, binary, geometry, 
point, linestring, polygon, 
multipoint, multilinestring, multipolygon, 
geometrycollection
复制代码