धन्यवाद जोड़ने और :)पढ़ने के लिए एक नया स्तंभ
की मदद करने मैं उपयोग कर रहा हूँ के बाद activeandroid साथ तालिका अद्यतन करने के लिए कैसे ActiveAndroid 3.0 - Android 2.2 - मेरे ऐप में मैं एक मॉडल "उपयोगकर्ता" कहा जाता है। शुरुआत में मैंने केवल मॉडल (आईडी, नाम, पासकोड) कॉलम/विशेषताओं के साथ बनाया, मैंने एमुलेटर पर ऐप चलाया, और यह काम किया।
@Table(name = "user")
public class User extends Model {
@Column (name = "name")
public String name;
@Column (name = "pass_code")
public String passCode;
}
फिर मैंने एक नया कॉलम/विशेषता - प्रोफ़ाइल इमेज जोड़ा। मैंने एमुलेटर पर ऐप चलाया और मुझे SQLite कॉलम प्रोफ़ाइल मिली IMage त्रुटि मौजूद नहीं है।
@Table(name = "user")
public class User extends Model {
@Column (name = "name")
public String name;
@Column (name = "pass_code")
public String passCode;
@Column (name = "profile_image")
public String profileImage;
}
मैंने ActiveAndroid डीबी नाम बदलने और मैनिफेस्ट फ़ाइल में डीबी संस्करण गुणों को अद्यतन करने का प्रयास किया है।
<meta-data android:name="AA_DB_NAME" android:value="my_app.db" />
<meta-data android:name="AA_DB_VERSION" android:value="2" />
लेकिन मुझे कॉलम प्राप्त करना जारी रहता है त्रुटि नहीं है।
ERROR AndroidRuntime Caused by: android.database.sqlite.SQLiteException:
no such column: profile_image: , while compiling: SELECT * FROM user WHERE profile_image = ?
मैं भी कोशिश की है, संयुक्त राष्ट्र: स्थापित करने, एमुलेटर से एप्लिकेशन एमुलेटर को पुन: प्रारंभ, ActiveAndroid.cacheClear बुला()। अभी तक इनमें से कोई भी काम नहीं किया।
मैं वास्तव में किसी भी मदद की सराहना करता हूं। धन्यवाद।
सहायता के लिए धन्यवाद, बहुत सराहना की। – dagger
जिज्ञासा से, ऐप को नहीं हटाया जाना चाहिए और इसे पुनर्स्थापित करने से काम करना चाहिए? या ऐप को हटाने से डीबी को भी हटाया नहीं जाता है? –
@ जोशपिनटर: हां, ऐप को अनइंस्टॉल करना काम करना चाहिए। वास्तव में, 'साफ़ डेटा' को मारना ट्रैक भी करना चाहिए। हालांकि यह एक दीर्घकालिक समाधान नहीं है, क्योंकि आप शायद अपने ऐप के उपयोगकर्ताओं को उस प्रक्रिया के माध्यम से नहीं जाना चाहते हैं। सही दृष्टिकोण उचित स्कीमा अपग्रेड तर्क प्रदान करना है। –