hibernate - 使用 @OneToOne 映射但外键不会使约束失败或不工作
问题描述
这是CustomeOrderEntity -:
class CustomerOrder {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "order_id")
var orderID: Long = 0
@ManyToOne
@JoinColumn(name = "customer_id", referencedColumnName = "customer_id")
lateinit var customer: Customer
@Column(name = "customer_payment_method_id")
lateinit var customerPaymentMethodId: String
@Column(name = "order_status_code")
lateinit var orderStatusCode: String
@Column(name = "date_order_placed")
lateinit var dateOrderPlaced: String
@Column(name = "date_order_paid")
lateinit var dateOrderPaid: String
@Column(name = "der_order_price")
lateinit var derOrderPrice: String
@Column(name = "other_order_details")
lateinit var otherOrderDetails: String
}
这是客户实体
data class Customer
(
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name ="customer_id" )
val customerID:Long = 0,
@Column(name = "customer_name",nullable = false)
val customerName:String,
@Column(name = "customer_email",nullable = false)
val customerEmail:String,
@Column(name = "customer_phone")
val customerPhone:String,
@Column(name = "customer_other_details",nullable = true)
val customerOtherDetails:String
)
添加没有客户的 customer_order 时,添加的数据和 customer_id 字段为空。
我想在添加 customer_order 时执行此操作,它首先检查 customer_id 是否存在 customer_order,如果不存在,则不会添加数据。
解决方案
推荐阅读
- javascript - 什么是最好的方法以及如何使用平滑滚动条 js 实现 jQuery 代码
- laravel - 为什么我的 Laravel 条件 whereHas 查询不起作用?
- lisp - nfa 编译器中的未定义运算符 FUNCTION (FUNCTION (QUOTE A))
- scala - Spark Scala 聚合组 Dataframe
- hyperparameters - R-MLR : 为包裹的学习者调整超参数
- javascript - ReactJS:backend.js:6 警告:在现有状态转换期间无法更新(例如在`render`中)
- python - 实现一个“添加到购物篮”按钮分类器
- reactjs - Redux - 全局概念 - 显示消息取决于布尔值
- node.js - 从浏览器强制从 youtube dl 下载视频
- swift - 使用 Combine SwiftUI 获取图像并设置它们会使应用程序冻结