57 lines
1.3 KiB
SQL
57 lines
1.3 KiB
SQL
SET @fk_order_item_order = (
|
|
SELECT CONSTRAINT_NAME
|
|
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'orderitem'
|
|
AND REFERENCED_TABLE_NAME = 'order'
|
|
LIMIT 1
|
|
);
|
|
|
|
SET @sql = IF(
|
|
@fk_order_item_order IS NULL,
|
|
'SELECT 1',
|
|
CONCAT('ALTER TABLE `orderitem` DROP FOREIGN KEY `', @fk_order_item_order, '`')
|
|
);
|
|
PREPARE stmt FROM @sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
SET @fk_order_item_product = (
|
|
SELECT CONSTRAINT_NAME
|
|
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'orderitem'
|
|
AND REFERENCED_TABLE_NAME = 'supplier_product'
|
|
LIMIT 1
|
|
);
|
|
|
|
SET @sql = IF(
|
|
@fk_order_item_product IS NULL,
|
|
'SELECT 1',
|
|
CONCAT('ALTER TABLE `orderitem` DROP FOREIGN KEY `', @fk_order_item_product, '`')
|
|
);
|
|
PREPARE stmt FROM @sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
SET @fk_order_user = (
|
|
SELECT CONSTRAINT_NAME
|
|
FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
|
|
WHERE TABLE_SCHEMA = DATABASE()
|
|
AND TABLE_NAME = 'order'
|
|
AND REFERENCED_TABLE_NAME = 'User'
|
|
LIMIT 1
|
|
);
|
|
|
|
SET @sql = IF(
|
|
@fk_order_user IS NULL,
|
|
'SELECT 1',
|
|
CONCAT('ALTER TABLE `order` DROP FOREIGN KEY `', @fk_order_user, '`')
|
|
);
|
|
PREPARE stmt FROM @sql;
|
|
EXECUTE stmt;
|
|
DEALLOCATE PREPARE stmt;
|
|
|
|
DROP TABLE IF EXISTS `orderitem`;
|
|
DROP TABLE IF EXISTS `order`;
|