/ / Sqlite डेटाबेस डुप्लिकेट किए गए डेटा को सम्मिलित करता है - android, sqlite

Sqlite डेटाबेस डुप्लिकेट किए गए डेटा को सम्मिलित करता है - android, sqlite

मुझे वेबसर्विस से डेटा मिला और उन्हें एक्टिविटी ऑनक्रिएट () फंक्शन में डेटाबेस में डाला। कोड इस प्रकार है:

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.contact_person);

RunningService runningService = new RunningService();
runningService.insert(staff);
initView();
}

और सम्मिलित करने का कोड () नीचे है:

public void insertAllStaff(Staff staff){
ContentValues values = new ContentValues();
values.put("name", staff.getName());
Uri uri = contentResolver.insert(CONTENT_URI, values);
}

हर बार जब मैं इस गतिविधि में जाता हूं, तो यह डेटाबेस में डेटा डालेगा, डेटा समान हैं।

क्या कोई ऐसा तरीका है जिसे मैं इस गतिविधि में जा सकता हूं और यह डेटाबेस में समान डेटा सम्मिलित नहीं करता है?

उत्तर:

उत्तर № 1 के लिए 1

यदि आप "अपनी तालिका के लिए बार-बार मान नहीं चाहते हैं तो आपको लगता है कि" अद्वितीय "क्षेत्र के लिए एक अद्वितीय सूचकांक को परिभाषित करना होगा।"

आप उस समय पर सृजन करते हैं, या आप ALTER SQL स्टेटमेंट का उपयोग करके अनुक्रमित बना सकते हैं।


जवाब के लिए 0 № 2

SQLite INSERT नहीं EXISTS सिंटैक्स का समर्थन करता है।

INSERT INTO MyTable(id,text)
SELECT 123, "Helloworld"
WHERE NOT EXISTS(SELECT 123 FROM MyTable WHERE id = 123");

कृपया प्रदर्शन के लिए इस सिंटैक्स का उपयोग करें।
आप अपने रिज़ॉल्वर के साथ किस सामग्री प्रदाता का उपयोग कर रहे हैं? आपको इसे बदलने और कुछ और उपयोग करने की आवश्यकता हो सकती है जो उपरोक्त SQL कथन का उपयोग करता है।