Bir sorum var, son zamanlarda DB'de çok sayıda tablo içeren bir modül geliştiriyordum ve konsept sık sık değişiyordu, bu yüzden DB'de mevcut tabloları değiştirmem gerekiyordu ve tablo oluşturmada komut dosyası ve tablo yükseltme konusunda fark olduğunu fark ettim. Hadi bakalım. Aşağıdaki tablo kodunu oluşturmaya bakın:
$table = $installer->getConnection()
->newTable($installer->getTable('module/table'))
->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, 9, array(
'nullable' => false,
'primary' => true,
'identity' => true,
'auto_increment' => true
)
);
yenitablo () fonksiyonu döner örneği Varien_Db_Ddl_Table Ve yükseltme tablo komut bir göz atın, mevcut tabloya yeni bir sütun eklemek farklı bir yol kullanır:
$installer->getConnection()
->addColumn($tableName, 'test', array(
'nullable' => false,
'length' => 9,
'type' => Varien_Db_Ddl_Table::TYPE_INTEGER,
'comment' => 'Test Field'
)
)
bu iki addColumn işlevi farklıdır ve ayrıca farklı sınıfların yöntemleridir ve sözdizimini her değiştirmem gerektiğinde beni üzüyorlar.
Yani burada soru, Varien_Db_Ddl_Table sınıfının örneğini kullanarak mevcut tabloyu güncellemenin bir yolu var mı?