对于小型应用程序,(我也在其中验证客户端和服务器端的数据),如果我选择的数据库模型没有定义任何FOREIGN KEYS,它将来如何对我的应用程序产生负面影响?这些陷阱是否易于管理?
使用示例简化问题: 我有一个任务管理应用程序,它包含两个表:任务和里程碑。每项任务都有一些里程碑。 任务表的列是:
task_id,task_title。
里程碑表的列是:
parent_task_id,milestone_title
现在,列parent_task_id应该是Tasks表中的task_id之一。
现在问题是 如果我选择在php中验证parent_task_id并且不为任务表的task_id列创建外键怎么办?
示例伪代码:
$array = store_query_results_in_array('select task_id from tasks where 1', $con);
If (!is_in($task, $array)) {
throw $error;
}