为空和不为空为什么用两种方式

来源:10-5 创建课程的增删改查接口(上)

qq_慕妹2034599

2023-12-03

可以为空是通过@Column中传入nullable:true 不为空是通过@IsNotEmpty()修饰器。。那么是否可以通过@Column中传入nullable:false为false替代@IsNotEmpty()呢。两者有什么区别的呢

写回答

1回答

黑石

2023-12-05

@Column(nullable = false): 是一个数据库级别的约束,用于指定该字段在数据库中不允许为空。这意味着无论是在应用程序层面还是在数据库层面,都会强制要求该字段有值。这是一种静态的约束,无法在运行时动态更改。

@IsNotEmpty(): 这是一个应用程序级别的约束,用于验证字段在应用程序中不为空。它是通过在实体类的setter方法上添加修饰器来实现的。当使用该修饰器时,每次设置字段的值时都会进行非空验证。这是一种动态的约束,可以在运行时根据业务逻辑进行更改。

一般两个都是需要的。

1
0

React18+TS+NestJS+GraphQL 全栈开发在线教育平台

平台级应用+流行全栈技术+实用职场技巧&面试策略 助你升职加薪

439 学习 · 242 问题

查看课程