उदाहरण में आने से पहले, हमें पता होना चाहिए कि एंड्रॉइड में एसक्लाइट डेटा बेस क्या है। SQLite एक ओपन सोर्स SQL डेटाबेस है जो किसी डिवाइस पर टेक्स्ट फ़ाइल में डेटा स्टोर करता है। Android अंतर्निहित SQLite डेटाबेस कार्यान्वयन के साथ आता है। SQLite सभी रिलेशनल डेटाबेस सुविधाओं का समर्थन करता है। इस डेटाबेस तक पहुँचने के लिए, आपको JDBC, ODBC आदि जैसे किसी भी प्रकार के कनेक्शन स्थापित करने की आवश्यकता नहीं है।
यह उदाहरण दर्शाता है कि Android sqlite में LONGTEXT मान का उपयोग कैसे करें।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
<एडिटटेक्स्ट एंड्रॉइड:आईडी ="@ + आईडी /नाम" एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:संकेत ="नाम दर्ज करें" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" /> <एडिटटेक्स्ट एंड्रॉइड:आईडी ="@ + आईडी / वेतन" एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:इनपुट टाइप ="नंबरडिसीमल" एंड्रॉइड:संकेत ="वेतन दर्ज करें" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" /> "एंड्रॉइड:टेक्स्ट ="सेव" एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" /> <बटन एंड्र oid:id ="@+id/refresh" android:text ="Refresh" android:layout_width ="wrap_content" android:layout_height ="wrap_content" /> <बटन एंड्रॉइड:आईडी ="@ + आईडी / डिलीट" एंड्रॉइड:टेक्स्ट ="डिलीटऑल" एंड्रॉइड:लेआउट_विड्थ ="रैप_कंटेंट" एंड्रॉइड:लेआउट_हाइट ="wrap_content" />
उपरोक्त कोड में, हमने LONGTEXT . लिया है नाम और वेतन संपादित पाठ के रूप में, जब उपयोगकर्ता सहेजें बटन पर क्लिक करता है तो यह डेटा को एसक्लाइट डेटा बेस में संग्रहीत करेगा। कर्सर से सूचीदृश्य अपडेट करने के लिए मान डालने के बाद रीफ्रेश बटन पर क्लिक करें। यदि उपयोगकर्ता अपडेट बटन पर क्लिक करता है तो यह डेटा को अपडेट कर देगा।
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ें <पूर्व>पैकेज com.example.andy.myapplication;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.ArrayAdapter;import android.widget.Button;आयात android.widget.EditText;import android.widget.ListView;import android.widget.Toast;import java.util.ArrayList;सार्वजनिक वर्ग MainActivity AppCompatActivity का विस्तार करता है {बटन सेव, रिफ्रेश; संपादन टेक्स्ट नाम, वेतन; निजी सूची दृश्य सूची दृश्य; @Override संरक्षित शून्य पर क्रिएट (बंडल readdInstanceState) {super.onCreate (readdInstanceState); setContentView(R.layout.activity_main); अंतिम डेटाबेस हेल्पर =नया डेटाबेस हेल्पर (यह); अंतिम ArrayList array_list =helper.getAllCotacts (); नाम =findViewById (R.id.name); वेतन =findViewById (R.id.salary); सूची दृश्य =findViewById (R.id.listView); अंतिम ArrayAdapter arrayAdapter =नया ArrayAdapter (MainActivity.this, android.R.layout.simple_list_item_1, array_list); listView.setAdapter (सरणी एडेप्टर); findViewById(R.id.Delete).setOnClickListener(new View.OnClickListener() {@Override public void onClick(View v) {if (helper.delete()) { Toast.makeText(MainActivity.this, "Deleted", Toast .LENGTH_LONG).show(); } और { Toast.makeText(MainActivity.this, "NOT Deleted", Toast.LENGTH_LONG).show(); } } }); findViewById(R.id.udate).setOnClickListener(new View.OnClickListener() {@Override public void onClick(View v) {if (!name.getText().toString().isEmpty() &&!salary.getText( ).toString().isEmpty()) { अगर (helper.update(name.getText().toString(), वेतन.getText().toString())) { Toast.makeText(MainActivity.this, "Updated" , Toast.LENGTH_LONG).show(); } और { Toast.makeText(MainActivity.this, "NOT Updated", Toast.LENGTH_LONG).show(); }} और {name.setError("Enter NAME"); वेतन .setError("वेतन दर्ज करें"); } } }); findViewById(R.id.refresh).setOnClickListener(new View.OnClickListener() {@Override public void onClick(View v) { array_list.clear(); array_list.addAll(helper.getAllCotacts()); arrayAdapter.notifyDataSetChanged(); listView.invalidateViews (); listView.refreshDrawableState (); } }); findViewById(R.id.save).setOnClickListener(new View.OnClickListener() {@Override public void onClick(View v) {if (!name.getText().toString().isEmpty() &&!salary.getText( ).toString().isEmpty()) { अगर (helper.insert(name.getText().toString(), वेतन.getText().toString())) { Toast.makeText(MainActivity.this, "Inserted" , Toast.LENGTH_LONG).show(); } और { Toast.makeText(MainActivity.this, "Not Insert", Toast.LENGTH_LONG).show(); } }else { name.setError("Enter NAME"); वेतन .setError("वेतन दर्ज करें"); } } }); }}पूर्व>चरण 4 - निम्न कोड को src/ DatabaseHelper.java
. में जोड़ें <पूर्व>पैकेज com.example.andy.myapplication;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteException;आयात android.database.sqlite.SQLiteOpenHelper;import java.io.IOException;import java.util.ArrayList;class DatabaseHelper SQLiteOpenHelper का विस्तार करता है {सार्वजनिक स्थिर अंतिम स्ट्रिंग DATABASE_NAME ="salaryDatabase5"; सार्वजनिक स्थिर अंतिम स्ट्रिंग CONTACTS_TABLE_NAME ="वेतन विवरण"; सार्वजनिक डेटाबेस हेल्पर (संदर्भ संदर्भ) {सुपर (संदर्भ, DATABASE_NAME, अशक्त, 1); } @ ओवरराइड सार्वजनिक शून्य पर क्रिएट (SQLiteDatabase डीबी) {कोशिश करें {db.execSQL ("तालिका बनाएं" + CONTACTS_TABLE_NAME + "(आईडी INTEGER प्राथमिक कुंजी, नाम LONGTEXT, वेतन BIGINT (8), डेटाटाइम डिफ़ॉल्ट current_timestamp)"); } पकड़ें (SQLiteException e) {कोशिश करें {नया IOException (e) फेंकें; } कैच (IOException e1) { e1.printStackTrace (); } } } @अपग्रेड पर सार्वजनिक शून्य को ओवरराइड करें (SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL ("यदि मौजूद है तो ड्रॉप टेबल" + CONTACTS_TABLE_NAME); ऑनक्रेट (डीबी); } पब्लिक बूलियन इंसर्ट (स्ट्रिंग एस, स्ट्रिंग एस1) {SQLiteDatabase db =this.getWritableDatabase (); ContentValues contentValues =new ContentValues(); contentValues.put ("नाम", एस); contentValues.put ("वेतन", s1); db.replace (CONTACTS_TABLE_NAME, शून्य, सामग्री मान); सच लौटना; } सार्वजनिक ArrayList getAllCotacts () {SQLiteDatabase db =this.getReadableDatabase (); ArrayList<स्ट्रिंग> array_list =नया ArrayList<स्ट्रिंग>(); // कर्सर रेस =db.rawQuery ("+ CONTACTS_TABLE_NAME+" से * चुनें जहां नाम ='सैराम' और नाम शून्य नहीं है ", शून्य); कर्सर रेस =db.rawQuery ("चयन करें (आईडी ||' :'||नाम ||' :' || वेतन || ' :'|| डेटाटाइम) AS पूरानाम "+CONTACTS_TABLE_NAME, null ); res.moveToFirst (); जबकि (res.isAfterLast () ==झूठा) { array_list.add (res.getString (res.getColumnIndex ("पूर्णनाम"))); res.moveToNext (); } वापसी array_list; } सार्वजनिक बूलियन अद्यतन (स्ट्रिंग एस, स्ट्रिंग एस 1) {SQLiteDatabase डीबी =this.getWritableDatabase (); db.execSQL("अद्यतन"+CONTACTS_TABLE_NAME+" सेट नाम ="+"'"+s+"', "+"वेतन ="+"'"+s1+"'"); सच लौटना; } पब्लिक बूलियन डिलीट () {SQLiteDatabase db =this.getWritableDatabase (); db.execSQL ("+ CONTACTS_TABLE_NAME से हटाएं); सच लौटना; }}पूर्व>आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
उपरोक्त उदाहरण में हम नाम कॉलम में LONGTEXT मान संग्रहीत कर रहे हैं, अब सूचीदृश्य रीफ्रेश करने के लिए रीफ्रेश बटन पर क्लिक करें। आउटपुट इस तरह होगा -