Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.
0 oy
351 kez görüntülendi
ios development kategorisinde tarafından
tarafından yeniden etikenlendirildi
Pojeye embed ettiğim SQLite tipinde bir veritabanı var.  AppDelegate  didFinishLaunchingWithOptions içerisinde şu fonksiyonu çağırıyorum:  copyFile("veritabanim.sqlite")

class func copyFile(fileName: NSString) {

        var dbPath: NSString = getPath(fileName)

        var fileManager = NSFileManager.defaultManager()

        if !fileManager.fileExistsAtPath(dbPath) {

            var fromPath: NSString = NSBundle.mainBundle().resourcePath.stringByAppendingPathComponent(fileName)

            fileManager.copyItemAtPath(fromPath, toPath: dbPath, error: nil)

        }

    }

Uygulamada güncellemeler olunca veritabanı da haliyle güncelleniyor. Uygulama güncellemesini alacak kullanıcılar için nasıl bir versiyon mantığı kurmalıyım ? Aynı isimle veritabanını yüklersem o zaman bu fonksiyona göre zaten var deyip es geçecek ve eski veritabanı kalacak. Şimdilik yeni bir isim veriyorum ama bu da çok kötü  bir yaklaşım değil mi ?

1 cevap

0 oy
tarafından
tarafından seçilmiş
 
En İyi Cevap

ne kadar anlamsız dursa da en pratik çözüm yeni adlarla database versiyonları oluşturmaktır bana göre. zaten bir uygulama ne kadar versiyon güncellemesi gerektirir ki?

tarafından
tarafından düzenlendi
Core Data tarafında durum farklı mı ? Yani uygulama güncellenince veriler de kendiliğinden yenisiyle değişiyor mu?
...