TypeORM:查询一行是否存在

下面的 2 个示例分别演示了如何使用 TypeORM findOne() 方法和查询构建器来检查记录是否存在。

使用 findOne() 方法

假设我们需要找到一个名为 zadmei.com 的产品,我们可以这样做:

const productRepository = myDataSource.getRepository(Product);
const product = await productRepository.findOne({
      where: {
        name: 'zadmei.com'
      }
})

if(product) {
      console.log(product);
} else {
      console.log('Product not found');
}

使用查询生成器

如果您更喜欢使用查询生成器而不是查找选项,则可以使用以下代码:

const productRepository = myDataSource.getRepository(Product);
const product = await productRepository
      .createQueryBuilder('product')
      .where('product.name = :productName', { productName: 'zadmei.com' })
      .getOne();

if (product) {
      console.log(product);
} else {
      console.log('Product not found');
}