質問が1つあります。最近、DBに多くのテーブルを持つ1つのモジュールを開発しており、概念が頻繁に変更されていたため、DBの既存のテーブルを変更する必要がありました。どうぞ。以下のテーブルコードの作成をご覧ください。
$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
)
);
NEWTABLE()の関数が返すインスタンスVarien_Db_Ddl_Table とアップグレードのテーブル・スクリプトは、見て、既存のテーブルに新しい列を追加するには、別の方法を使用しています。
$installer->getConnection()
->addColumn($tableName, 'test', array(
'nullable' => false,
'length' => 9,
'type' => Varien_Db_Ddl_Table::TYPE_INTEGER,
'comment' => 'Test Field'
)
)
これら2つのaddColumn関数は異なり、異なるクラスのメソッドでもあり、構文を変更する必要があるたびに悲しくなります。
そこで質問がありますが、Varien_Db_Ddl_Tableクラスのインスタンスを使用して既存のテーブルを更新する方法はありますか?