예제 #1
0
 protected function setUp()
 {
     $installer = new Mage_Core_Model_Resource_Setup(Mage_Core_Model_Resource_Setup::DEFAULT_SETUP_CONNECTION);
     $this->_connection = $installer->getConnection();
     $this->_tableName = $installer->getTable('table_two_column_idx');
     $this->_oneColumnIdxName = $installer->getIdxName($this->_tableName, array('column1'));
     $this->_twoColumnIdxName = $installer->getIdxName($this->_tableName, array('column1', 'column2'));
     $table = $this->_connection->newTable($this->_tableName)->addColumn('id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array('identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true), 'Id')->addColumn('column1', Varien_Db_Ddl_Table::TYPE_INTEGER)->addColumn('column2', Varien_Db_Ddl_Table::TYPE_INTEGER)->addIndex($this->_oneColumnIdxName, array('column1'))->addIndex($this->_twoColumnIdxName, array('column1', 'column2'));
     $this->_connection->createTable($table);
 }
 /**
  * Create Changelog Table
  *
  * @return Enterprise_Mview_Model_Action_Changelog_Create
  */
 protected function _createChangelogTable()
 {
     $this->_connection->createTable($this->_getChangelogTableConfig());
     return $this;
 }
 /**
  * Create tmp table
  */
 protected function _createTmpTable()
 {
     $table = $this->_connection->newTable($this->_getMainTmpTable())->addColumn('category_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array('unsigned' => true, 'nullable' => false, 'primary' => true, 'default' => '0'), 'Category ID')->addColumn('product_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array('unsigned' => true, 'nullable' => false, 'primary' => true, 'default' => '0'), 'Product ID')->addColumn('position', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array('unsigned' => false, 'nullable' => true, 'default' => null), 'Position')->addColumn('is_parent', Varien_Db_Ddl_Table::TYPE_SMALLINT, null, array('unsigned' => true, 'nullable' => false, 'default' => '0'), 'Is Parent')->addColumn('store_id', Varien_Db_Ddl_Table::TYPE_SMALLINT, null, array('unsigned' => true, 'nullable' => false, 'primary' => true, 'default' => '0'), 'Store ID')->addColumn('visibility', Varien_Db_Ddl_Table::TYPE_SMALLINT, null, array('unsigned' => true, 'nullable' => false), 'Visibility')->setComment('Catalog Category Product Index Tmp');
     $this->_connection->dropTable($this->_getMainTmpTable());
     $this->_connection->createTable($table);
 }