- father::TypeORM_定义实体
- base::索引
示例
创建简单索引
我们可以在实体的属性上使用 @Index() 装饰器来创建一个简单的索引。
@Entity()
@Index('index_name', ['columnName'])
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
@Index()
username: string;
}以上示例中,我们在 User 实体的 username 属性上创建了一个简单的索引。
创建复合索引
除了简单索引外,我们还可以创建复合索引。复合索引是指同时对多个属性进行建立的索引。
@Entity()
@Index('index_name', ['column1', 'column2'])
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
username: string;
@Column()
email: string;
}以上示例中,我们在 User 实体的 username 和 email 属性上创建了一个复合索引。
创建唯一索引
除了普通的索引外,我们还可以创建唯一索引。唯一索引保证了被标记为唯一的属性值不会重复。
@Entity()
@Unique(['username'])
export class User {
@PrimaryGeneratedColumn()
id: number;
@Column()
username: string;
}以上示例中,我们在 User 实体的 username 属性上创建了一个唯一索引。
通过使用 TypeORM 的装饰器,我们可以轻松地定义和管理实体上的各种类型的索引,从而优化数据库查询性能。