MySQL Tablo Yapısında Değişiklik ve Taşıma
Merhabalar,
mevcutta kullandığım ve 24k satır veri olan bir MySQL tablom bulunmakta. Yeni geliştireceğim bir yapıdan dolayı veritabanını alt kısımdaki görselde öenekte verdiğim şekilde yeni bir tabloya aktarmak istiyorum. Görselde 1. durum şuanki kullandığım yapı ve 2. durum geçiş yapmak istediğim yapıdır.
En kolay ve kayıpsız şekilde yeni tabloma verileri nasıl bir komut ile aktarım sağlayabilirim.
Örnek :
Fikir ve yardımlarınız ile aydınlatabilirseniz sevinirim.
Alternatif Kod:
START TRANSACTION;
INSERT INTO yeni_tablo (SKU, BARKOD)
SELECT DISTINCT eski_tablo.SKU, eski_tablo.BARKOD1 as BARKOD FROM eski_tablo
WHERE eski_tablo.BARKOD1 IS NOT NULL;
INSERT INTO yeni_tablo (SKU, BARKOD)
SELECT DISTINCT eski_tablo.SKU, eski_tablo.BARKOD2 as BARKOD FROM eski_tablo
WHERE eski_tablo.BARKOD2 IS NOT NULL;
INSERT INTO yeni_tablo (SKU, BARKOD)
SELECT DISTINCT eski_tablo.SKU, eski_tablo.BARKOD3 as BARKOD FROM eski_tablo
WHERE eski_tablo.BARKOD3 IS NOT NULL;
SET @row_count = ROW_COUNT();
IF (@row_count = 0) THEN
ROLLBACK;
SELECT 'Veri transferinde beklenmedik bir sorun oluştu!' AS Result;
ELSE
DELETE FROM eski_tablo;
COMMIT;
SELECT 'Veri transfer işlemi başarıyla tamamlandı :)' AS Result;
END IF;