How to fix
SET FOREIGN_KEY_CHECKS=0;
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET AUTOCOMMIT = 0;
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
DROP TABLE IF EXISTS `vault_payment_token`;
CREATE TABLE `vault_payment_token` (
`entity_id` int(10) UNSIGNED NOT NULL COMMENT 'Entity Id',
`customer_id` int(10) UNSIGNED DEFAULT NULL COMMENT 'Customer Id',
`public_hash` varchar(128) NOT NULL COMMENT 'Hash code for using on frontend',
`payment_method_code` varchar(128) NOT NULL COMMENT 'Payment method code',
`type` varchar(128) NOT NULL COMMENT 'Type',
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Created At',
`expires_at` timestamp NULL DEFAULT NULL COMMENT 'Expires At',
`gateway_token` varchar(255) NOT NULL COMMENT 'Gateway Token',
`details` text COMMENT 'Details',
`is_active` tinyint(1) NOT NULL COMMENT 'Is active flag',
`is_visible` tinyint(1) NOT NULL COMMENT 'Is visible flag'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Vault tokens of payment';
DROP TABLE IF EXISTS `vault_payment_token_order_payment_link`;
CREATE TABLE `vault_payment_token_order_payment_link` (
`order_payment_id` int(10) UNSIGNED NOT NULL COMMENT 'Order payment Id',
`payment_token_id` int(10) UNSIGNED NOT NULL COMMENT 'Payment token Id'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Order payments to vault token';
ALTER TABLE `vault_payment_token`
ADD PRIMARY KEY (`entity_id`),
ADD UNIQUE KEY `VAULT_PAYMENT_TOKEN_HASH_UNIQUE_INDEX_PUBLIC_HASH` (`public_hash`),
ADD UNIQUE KEY `UNQ_54DCE14AEAEA03B587F9EF723EB10A10` (`payment_method_code`,`customer_id`,`gateway_token`),
ADD KEY `VAULT_PAYMENT_TOKEN_CUSTOMER_ID_CUSTOMER_ENTITY_ENTITY_ID` (`customer_id`);
ALTER TABLE `vault_payment_token_order_payment_link`
ADD PRIMARY KEY (`order_payment_id`,`payment_token_id`),
ADD KEY `FK_4ED894655446D385894580BECA993862` (`payment_token_id`);
ALTER TABLE `vault_payment_token`
MODIFY `entity_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'Entity Id';
ALTER TABLE `vault_payment_token`
ADD CONSTRAINT `VAULT_PAYMENT_TOKEN_CUSTOMER_ID_CUSTOMER_ENTITY_ENTITY_ID` FOREIGN KEY (`customer_id`) REFERENCES `customer_entity` (`entity_id`) ON DELETE CASCADE;
ALTER TABLE `vault_payment_token_order_payment_link`
ADD CONSTRAINT `FK_4ED894655446D385894580BECA993862` FOREIGN KEY (`payment_token_id`) REFERENCES `vault_payment_token` (`entity_id`) ON DELETE CASCADE,
ADD CONSTRAINT `FK_CF37B9D854256534BE23C818F6291CA2` FOREIGN KEY (`order_payment_id`) REFERENCES `sales_order_payment` (`entity_id`) ON DELETE CASCADE;
SET FOREIGN_KEY_CHECKS=1;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;