2012-06-05 6 views
6

क्या कोर डेटा मुझे प्रोग्रामेटिक रूप से नई तालिका बनाने की अनुमति दे सकता है? या अगर मुझे इसकी ज़रूरत है तो मुझे सीधे SQLite का उपयोग करने की आवश्यकता है।प्रोग्रामेटिक रूप से आईओएस-कोर डेटा के साथ नई तालिका बनाएं

धन्यवाद

उत्तर

4

एक CoreData दृष्टिकोण से, तुम सच में नया टेबल बना नहीं है क्योंकि डेटाबेस तालिकाओं केवल एक हठ दुकान के संभावित प्रकार कोर डाटा मॉडल के साथ जुड़े रहे हैं।

हालांकि, आप एनएसईएनटीटी डिस्क्रिप्शन क्लास का उपयोग करके प्रोग्रामिंग रूप से नई कोर डेटा इकाइयां बना सकते हैं। मैं क्रम में एक संशोधित करने का प्रयास कभी नहीं किया है

Entity descriptions are editable until they are used by an object graph manager. This 
allows you to create or modify them dynamically. However, once a description is used 
(when the managed object model to which it belongs is associated with a persistent store 
coordinator), it must not (indeed cannot) be changed. This is enforced at runtime: any 
attempt to mutate a model or any of its sub-objects after the model is associated with a 
persistent store coordinator causes an exception to be thrown. If you need to modify a 
model that is in use, create a copy, modify the copy, and then discard the objects with 
the old model. 

, तो मुझे यकीन है कि वास्तव में यह कैसे अच्छी तरह से काम आप एक मौजूदा SQLite हठ की दुकान है जब, पर अगर नहीं कर रहा हूँ: NSEntityDescription वर्ग प्रलेखन में आप इस मिलेगा सब। लेकिन यह संभवतः एनएसईएनटीटी डिस्क्रिप्शन के साथ खेलने के लायक है यह देखने के लिए कि क्या आप इसे करने की कोशिश कर रहे हैं।

+0

धन्यवाद टिम, आईओएस ढांचे के कई की तुलना में, coredata मेरे लिए उपयोग करने के लिए थोड़ा व्यस्त है। – shebelaw

+0

अच्छी तरह से टिम डालें ... –

+0

@shebelaw: यह शुरू करने के लिए बहुत जटिल है, लेकिन अगर आपको बूस्टर की ज़रूरत है, तो मैं बिग नेर्ड रांच किताबों की सिफारिश करता हूं। उन्होंने चीजों को आम आदमी शब्दों में रखा, वे झाड़ी के चारों ओर नहीं हराते हैं। http://www.bignerdranch.com/books अमेज़ॅन पर दूसरी हाथ प्रतियों के रूप में किताबें पाने के लिए शायद सस्ता है, लेकिन फिर भी एक नजर लायक है। –

0

आप आमतौर पर एक्सकोड के डेटा मॉडल डिज़ाइन टूल का उपयोग करके प्रबंधित ऑब्जेक्ट मॉडल को ग्राफिकल बनाते हैं। (क्या आप रनटाइम पर प्रोग्राम के रूप में मॉडल का निर्माण कर सकते हैं चाहते हैं

Core Data programming Guide

+0

मुझे नहीं लगता कि यह संभव है। आप इससे पहले क्या कर सकते हैं? – shebelaw

+0

@ शनमुगाराजा जी: लगातार स्टोर के माध्यम से खींचने के बाद आप मॉडल को प्रोग्रामिक रूप से बदल नहीं सकते हैं। हालांकि आप ऐसे मॉडल बदल सकते हैं जो स्टोर द्वारा 'लॉक' नहीं हैं। –

0

आप कर सकते हैं, लेकिन:

  • एक ऑब्जेक्ट मॉडल प्रसंग (वर्तमान एक के बाहर आप में/का उपयोग कर रहे हैं)
  • बनाएं
  • एक या अधिक इकाइयां बनाएं
  • उस मॉडल के लिए एक अलग निरंतर स्टोर बनाएं
  • इकाइयों को सहेजें आदि ...
  • दुकान बंद है जब आप

काम हो गया के रूप में वे काफी तय जब वे क्रम पर्यावरण में खींच लिया रहे हैं आप तेज़ी से मॉडल नहीं बदल सकते।