하나의 질문이 있습니다. 최근에 DB에 많은 테이블이있는 하나의 모듈을 개발하고 개념이 자주 변경되어 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'
)
)
이 두 addColumn 함수는 다르며 다른 클래스의 메소드이며 구문을 변경해야 할 때마다 나를 슬프게합니다.
그래서 여기에 질문이 있습니다. Varien_Db_Ddl_Table 클래스의 인스턴스를 사용하여 기존 테이블을 업데이트하는 방법이 있습니까?