Nếu bạn muốn thêm nhiều cột vào bảng hiện có của mô-đun, bạn có thể làm như sau.
Bước 1: Tạo Nâng cấpSchema.php trong thư mục Cài đặt. Lấy ý tưởng từ mã sau đây.
namespace Vendor\ModuleName\Setup;
use Magento\Framework\Setup\UpgradeSchemaInterface;
use Magento\Framework\Setup\ModuleContextInterface;
use Magento\Framework\Setup\SchemaSetupInterface;
class UpgradeSchema implements UpgradeSchemaInterface
{
public function upgrade(SchemaSetupInterface $setup,
ModuleContextInterface $context){
$setup->startSetup();
if (version_compare($context->getVersion(), '1.0.1') < 0) {
// Get module table
$tableName = $setup->getTable('table_name');
// Check if the table already exists
if ($setup->getConnection()->isTableExists($tableName) == true) {
// Declare data
$columns = [
'imagename' => [
'type' => \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
'nullable' => false,
'comment' => 'image name',
],
];
$connection = $setup->getConnection();
foreach ($columns as $name => $definition) {
$connection->addColumn($tableName, $name, $definition);
}
}
}
$setup->endSetup();
}
}
Bước 2: Thay đổi setup_version
giá trị trongmodule.xml
Bước 3: Chạy php bin/magento setup:upgrade
lệnh từ CLI