我正在做一些 php/mysql 工作,并开始想知道什么会更有效,什么方法会具有更好的数据完整性。
我从未使用过方法 #2,但我已经看到它在 CMS 或电子商务等系统中使用过。我经常使用#1。
示例:在我的系统中创建“任务”时,我需要为其分配 1 个或多个用户。
方法#1 在这种方法中,我将有一个存储task_id 和user_id 的表。我会查询此表以获取关系。
方法#2 在这种方法中,我将在任务表“users_assigned”中有一个列,这将存储一个序列化数组,当我需要时我会取消序列化。例如
$data = array('John', 'Jack', 'Jill');
// after serialization it would look like...
// a:3:{i:0;s:4:"John";i:1;s:4:"Jack";i:2;s:4:"Jill";}
哪种方法最适合将此类数据存储在数据库中?