我的数据库有以下结构:
我在php中创建了一个类User,它具有以下属性:
public $user_id;
public $first_name;
public $last_name;
public $password;
public $job;
public $department;
然后在我的代码中,我计划让$ job和$ department成为名为Job and Department的对象。
在用户类中,我有一个名为load user data的方法。我首先得到所有用户数据但后来我很难如何进行查询以获取部门和工作的信息(通过id)我应该有一个查询(使用关节)来加载所有数据并从该数据创建我的对象,或者我应该像那样运行Job和Department的查询吗
$this->department = new Department($this->dbc, $userData['department_id']);
$this->job = new Job($this->dbc, $userData['job_id']);
在每个对象中,执行查询并检索数据?
答案 0 :(得分:0)
如果您想将Job和Department作为对象,那么您正在考虑使用这两种方法。如果您选择在SQL查询中使用联接,那么您将只处理一个对象,其中包含SQL查询的整个结果集,这意味着您只需要打开和关闭一个连接。如果您选择不使用联接,您将返回您的id字段,然后查询Job和Department表,打开和关闭至少两个以上的连接。
就个人而言,我会使用一个查询,返回一个数组保存在内存中,然后让你的Job和Department对象从该数组中拉出来。它可以减少连接数量,降低处理要求。