Bölüm 11: Çapraz Dialect Migrasyonu
Bilgi: Bu bölüm; MySQL, PostgreSQL ve SQLite arasında çapraz dialect şema/veri transferini ve SQL dosyaları içe aktarılırken dialect algılamayı açıklar.
Bu bölümde:
11.1 Çapraz Dialect Transferi
SQLOZ, Transfer Veritabanı iş akışı aracılığıyla MySQL, PostgreSQL ve SQLite arasında çapraz dialect şema/veri transfer matrisi sunar:
- MySQL → SQLite veya PostgreSQL
- PostgreSQL → MySQL veya SQLite
- SQLite → MySQL veya PostgreSQL
Transfer motoru, hedef dialect DDL ve değerlerini üretir; desteklenen alıntı ve tür eşlemelerini yönetir, tabloları foreign-key güvenli oluşturma sırasına göre sıralar ve veriyi sınırlı sayfalar halinde kopyalar. Satıcıya özgü veya desteklenmeyen tanımlar hâlâ gözden geçirme gerektirebilir.
İpucu: Keyfi satıcı SQL’inin kayıpsız çevrilebileceğini varsaymak yerine üretilen önizlemeyi ve hedef taraftaki doğrulamayı kullanın. Bu iş akışı şema/veri transferidir; her dialect’e özgü SQL ifadesinin transpile edileceğinin garantisi değildir.
11.2 Akıllı İçe Aktarma (Dialect Sniffer)
Başka bir veritabanından bir .sql dosyanız varsa, bu dosyanın yazıldığı dialect, bağlı olduğunuz veritabanının dialect’ından farklı olabilir.
- Dosya → SQL Betiği İçe Aktar… seçeneğini açın (
Cmd + Shift + I). .sqldosyanızı seçin.- SQLOZ dosya yapısını otomatik olarak tespit eder (Dialect Sniffer). Bir dialect uyuşmazlığı varsa şu uyarıyı gösterir:
Uyarı: Yüklemek istediğiniz dosya MySQL dialect’inde yazılmış, ancak bağlı veritabanınız PostgreSQL.
- Hedef Dialect’e Otomatik Transpile Et’i işaretleyin ve İçe Aktarmayı Başlat ile devam edin.
- Dosyayı okurken SQLOZ, desteklenen tablo tanımlarını, değerleri ve alıntılamayı hedef dialect’e dönüştürerek içe aktarır. Desteklenmeyen veya satıcıya özgü ifadeler hâlâ gözden geçirme gerektirebilir.