2014-02-20 31 views
0

Db2PhpEntity類提供了使用類中的內容插入,刪除和更新表的函數。我有幾種情況,其中數據已經存在(可以)在數據庫中,併爲UNIQUE集的鍵提供值,我應該從表中獲取數據來填充我的類字段。有沒有這方面的功能? 如果沒有,如果我寫下面給出的函數,它會好嗎? 這是我的aptInfo類的函數(它具有我在函數中分配的字段) 塊和Housenumber組合形成一行UNIQUE(我使用了UNIQUE而不是PK)並且aptId是PK。 Owner_id和ten​​ant_id是外鍵 我使用block和housenumber值和大部分時間創建aptInfo對象,DB表應該有我正在談論的單元,因此我想從數據庫表中提取其餘的公寓信息這些值並將它們放在我的類變量中。以下是我寫的功能使用Db2PhpEntity類(的DB2php)(或類似)是否有可能從DB獲取內容到類中?

public function getAllFieldsFromDB() { 
      if($this->aptId == NULL) 
      { 
       //find if the apartment exists in the database 
       $con = connectDB("NestAdmin", "nestadminpw"); 

       $query = "SELECT * from apt_info WHERE ((block = $this->block) AND (housenumber = $this->houseNumber))"; 

       if($result = $con->query($query)){ 

        /* fetch associative array */ 
        while ($row = $result->fetch_assoc()) { 
         $this->aptId = $row["apt_id"]; 
         $this->ownerId = $row["owner_id"]; 
         $this->aptArea = $row["$apt_area"]; 
         $this->aptType = $row["$apt_type"]; 
         $this->aptUsage = $row["$apt_usage"]; 
         $this->tenantId = $row["$tenant_id"]; 
        } 

        /* free result set */ 
        $result->free(); 
       } 
       /* close connection */ 
       $mysqli->close(); 

      } 
     return $this->aptId; 
    } 

有沒有更好的方法來做到這一點? 其他「讀」功能,我在想,一般都要求我的所有的類都是 - 如果DB項存在一個給定的唯一參數設置

  • 獲取唯一的行值給定參數查找(上面的例子中沒有按「T確保返回只有一行) - SELECT查詢給出值組獨特

  • 獲取行值的陣列,用於給定的零個或多個參數 - SELECT查詢給值0或多個參數

  • 獲取PK給定唯一參數的值之三集

  • 獲取給定的FK值賦予唯一的參數設置

在此先感謝您的幫助

回答

0

有喜歡FindByID功能(定的主鍵,發現該行),FindByExample,FindByFilter等等,給你在類對象中的行,給定已知值(在對象實例中設置)作爲參數傳遞給函數 真的不需要編寫問題中提到的函數

相關問題