2

抽象エンティティクラスに基づいて、ドクトリンでエンティティを動的に作成するにはどうすればよいですか? テーブル名は異なる必要があります。例えば

// abstract entity model
class Transport {
   // $name, $type and other columns
}

作成は次のようになります。

class TransportManager {

public function registerTransport($name) {
$car = ...
// here create table $name if does not exist, 
// and if it exists then just
// return Car instance of this $name table
return $car;

}

利用方法:

$car = $transportManager->registerTransport('car');
$airplain = $transportManager->registerTransport('airplain');
$train = $transportManager->registerTransport('train');
$helicopter = $transportManager->registerTransport('helicopter');

理由?同じ構造の複数 (> 10) のテーブルがあり、すべてのデータを別々のテーブルに保持して、各テーブルのオーバーロードを防止したい

4

3 に答える 3

0

1 つのテーブルを使用します。適切なインデックスを作成すれば、テーブルが巨大であっても、複数のテーブルを使用するよりも遅くなることはありません。

于 2013-12-21T01:02:36.343 に答える