{"id":954,"date":"2021-10-18T10:54:01","date_gmt":"2021-10-18T10:54:01","guid":{"rendered":"https:\/\/www.liainfraservices.com\/kbarticles\/?post_type=tesserakb&#038;p=954"},"modified":"2021-10-19T08:06:26","modified_gmt":"2021-10-19T08:06:26","slug":"how-to-store-mobile-app-data-offline-using-sqlite","status":"publish","type":"tesserakb","link":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/","title":{"rendered":"How to Store Mobile App Data Offline using SQLite"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">It\u2019s true that you can\u2019t compare SQLite with My SQL or Oracle due to the nature of work being entirely different but you should really know how SQLite can make a difference.&nbsp; But before that, if you don\u2019t know <span class=\"has-inline-color has-black-color\"><strong>How to Store Mobile App Data Offline using SQLite<\/strong><\/span> yet <strong>LIA infraservices <\/strong>the leading<strong> <a href=\"https:\/\/www.liainfraservices.com\/mobile-app-development-company-in-chennai\" target=\"_blank\" rel=\"noreferrer noopener\">mobile app development company in Chennai<\/a> <\/strong>has done several local data storage for individual applications and devices.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;Now I\u2019ll tell you what\u2019s <strong>SQLite:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A Serverless architecture that can access the database regardless of the storage. It comes with zero configuration and is transactional too. Since it requires minimal assistance from the operating system it\u2019s self-contained as well.&nbsp;&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Key Features of Using SQLite:<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Structured query DB<\/li><li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Light weight<\/li><li>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;No internet<\/li><li>&nbsp;&nbsp;&nbsp;&nbsp;Access multiple databases simultaneously.&nbsp;<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>SQLite Database Methods in Android Mobile Application:<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>\u00b7 &nbsp; &nbsp; &nbsp; &nbsp; Insert<\/li><li>\u00b7 &nbsp; &nbsp; &nbsp; &nbsp; Update<\/li><li>\u00b7 &nbsp; &nbsp; &nbsp; &nbsp; Delete<\/li><li>\u00b7 &nbsp; &nbsp; &nbsp; &nbsp; Query (view data)<\/li><\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Why SQLite?<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">1. &nbsp; &nbsp; &nbsp;Mobile Application needs to store a large amount of data&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2.&nbsp; &nbsp; &nbsp; You need not have a separate server to store your data nor access them. The key highlight of SQLite is that it\u2019s integrated with the application.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3.&nbsp; &nbsp; SQLite Is an open-source relational database i.e. used to perform database operations on android devices such as storing, manipulating or retrieving persistent data from the database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">4.&nbsp; &nbsp; &nbsp;It will be helpful to reduce the time delay and keep the process alive in a Mobile application. &nbsp;<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<p class=\"wp-block-paragraph\"><strong><em><a href=\"https:\/\/www.liainfraservices.com\/contact\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">Contact Lia Infraservices<\/span><\/a><\/em><\/strong><em> the <\/em><strong><em>No.1 <a href=\"https:\/\/www.liainfraservices.com\/mobile-app-development-company-in-chennai\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">Mobile Application Development Company in Chennai<\/span><\/a><\/em><\/strong><em> for enterprise-grade secured mobile apps.<\/em><\/p>\n<\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>How to View and Locate SQLite Database in Android Studio?<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>Connect device and <strong>Device file explorer<\/strong> can be found in the bottom-right corner of the android studio screen.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/n2nHo_hOlkb0kXRbRCanEKAjr3nIHVD9XOuev0gFWkGsqnBDfD0LMM8H_gQX-e3JtoR4ej2fVnsnmPxMZV2_CuY42UOzN5aRr3ecVXpMkxmhOuBccmXaDPlZmUjJnEMZZuRWq1hn=s0\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh4.googleusercontent.com\/1cx4BRLf3ckO_nakK05sSrwWegPYkdXhyNvQERVC0p_QdzcrK4G9n4tGu7X2cbP5TwJtc1U_yTCnCdv9_Uh75Kp3NgttoSa2w2_Gn2IokPYaBigzlF_T9A9AJLQSnEq02rLX42ds=s0\" alt=\"\"\/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>DB directory:<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\"><li>To search your package name go to<strong> data &gt; data&gt; package name. <\/strong>Click on package name.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&nbsp;data\/data\/<\/strong><strong>package_name<\/strong><strong>\/databases\/DATABASE_NAME<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/adKgjksGwsnDfkpfWblrRpuAXjXPEPzhX8KJTF3cpPVcUt-f1jEDE_WMxkmKReIbk2yYGFHAULK4XJB9IZXPQ67p2echWZhRS6izGVWm5k9efOpA0n3PHlskdsCK7Ae5624w7UiL=s0\" alt=\"\"\/><\/figure>\n\n\n\n<ol class=\"wp-block-list\" start=\"2\"><li>Download the database (snehadb )<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Right-click &#8211;&gt;save as<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>How to view databases?<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;1.&nbsp; To view the database we required SQLite browser<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Download link: <a href=\"https:\/\/sqlitebrowser.org\/dl\/\">https:\/\/sqlitebrowser.org\/dl\/<\/a>. (image 1)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;2. In DB browser, go to<strong> Open database\u2192 select downloaded db file\u2192 browse data\u2192 select &nbsp; &nbsp; table name<\/strong>(userdatas)(image 2)<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh5.googleusercontent.com\/w1qZyOd_E_J6N2QF_xHR5494o_5whV_3IZdGPhCyr81C7BTE9SCD1USW6OeSYKbIWHy8NU43LFIqfY03DxVGxODQGFC-PdF7VJzC2DObfM6WdCNWCgL49mol007PdkOo67grABOL=s0\" alt=\"\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/lh6.googleusercontent.com\/kZcBa1omaQCnssmATy-Lj0A0uEbrCI4_7fePcD-nOgf2JVYg1eGWcstwHcNlLHWNFS5JRGGW-upnSJZjbnxUeYI_cel8c0lms-ychDShv1rujS2UGuT1-PkjghYIk-FRbs5gnjq0=s0\" alt=\"\"\/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">7 steps to store Mobile App Data Offline using SQLite<strong>:<\/strong><\/h2>\n\n\n\n<h4 class=\"wp-block-heading\">1. <strong>Create database&nbsp;<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">For creating database, create java class, <strong>DbHelper<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public class <\/strong>DbHelper <strong>extends <\/strong>SQLiteOpenHelper {}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It will create 2 methods,<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>onCreate&nbsp;<\/li><li>onUpgrade<\/li><\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">@Override<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public void <\/strong>onCreate(SQLiteDatabase db) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;db.execSQL(<strong>CREATE_NEWUSER_TABLE<\/strong>);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;@Override<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public void <\/strong>onUpgrade(SQLiteDatabase db, <strong>int <\/strong>oldVersion, <strong>int <\/strong>newVersion) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;db.execSQL(<strong>&#8220;DROP TABLE IF EXISTS &#8221; <\/strong>+ <strong><em>TABLE_NAME<\/em><\/strong>);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;onCreate(db);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>2<\/strong>. <strong>Create static variables for database table<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static final <\/strong>String <strong><em>DATABASE_NAME <\/em><\/strong>= <strong>&#8220;snehadb&#8221;<\/strong>;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static final <\/strong>String <strong><em>TABLE_NAME <\/em><\/strong>= <strong>&#8220;users&#8221;<\/strong>;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static final <\/strong>String <strong><em>NAME <\/em><\/strong>= <strong>&#8220;name&#8221;<\/strong>;(col 1)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static final <\/strong>String <strong><em>SYNC_STATUS <\/em><\/strong>= <strong>&#8220;syncstatus&#8221;<\/strong>;(col 2)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static final <\/strong>String <strong><em>USER_COL_ID <\/em><\/strong>= <strong>&#8220;id&#8221;<\/strong>;(col 3)<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>&nbsp;&nbsp;&nbsp;&nbsp;3. Create constructor<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&nbsp;&nbsp;&nbsp;public <\/strong>DbHelper( Context context) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>super<\/strong>(context,<strong><em>DATABASE_NAME<\/em><\/strong>, <strong>null<\/strong>, 1);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;}<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&nbsp;<strong>&nbsp;&nbsp;&nbsp;4. Multiple cols in table syntax:<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">String <strong>CREATE_NEWUSER_TABLE <\/strong>= <strong>&#8220;CREATE TABLE &#8221; <\/strong>+ <strong><em>TABLE_NAME <\/em><\/strong>+ <strong>&#8221; (&#8220;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/strong>+ <strong><em>USER_COL_ID <\/em><\/strong>+ <strong>&#8221; INTEGER PRIMARY KEY AUTOINCREMENT, &#8221; <\/strong>+ <strong><em>NAME <\/em><\/strong>+<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>&#8221; TEXT, &#8221; <\/strong>+ <strong><em>SYNC_STATUS <\/em><\/strong>+ <strong>&#8221; INTEGER&#8221; <\/strong>+ <strong>&#8220;)&#8221;<\/strong>;<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>5. To save in local Database, need <\/strong><strong>ContentValues&nbsp;<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public void <\/strong>LocalDatabase(String name,SQLiteDatabase database){<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;ContentValues contentValues=<strong>new <\/strong>ContentValues();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;contentValues.put(<strong><em>NAME<\/em><\/strong>,name);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;database.insert(<strong><em>TABLE_NAME<\/em><\/strong>,<strong>null<\/strong>,contentValues);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>6. To read data from database, need cursor object<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public <\/strong>Cursor readLocalDatabase(SQLiteDatabase database){<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;String[]projection={<strong><em>NAME<\/em><\/strong>};<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>return <\/strong>(database.query(<strong><em>TABLE_NAME<\/em><\/strong>,projection,<strong>null<\/strong>,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>null<\/strong>,<strong>null<\/strong>,<strong>null<\/strong>,<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>null<\/strong>));}<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>7. In main activity initialize&nbsp;<\/strong><\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">DbHelper dbHelper=<strong>new <\/strong>DbHelper(<strong>this<\/strong>);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SQLiteDatabase database=dbHelper.getReadableDatabase();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And use save , read methods from the DbHelper class when it is needed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>private void <\/strong>readLocalStorage(){<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>arrayList<\/strong>.clear();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;DbHelper dbHelper=<strong>new <\/strong>DbHelper(<strong>this<\/strong>);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;SQLiteDatabase database=dbHelper.getReadableDatabase();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;Cursor cursor=dbHelper.readFromLocalDatabase(database);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>while <\/strong>(cursor.moveToNext()){<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String name=cursor.getString(cursor.getColumnIndex(DbHelper.<strong><em>NAME<\/em><\/strong>));<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>arrayList<\/strong>.add(<strong>new <\/strong>Contact(name,sync_status));<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>adapter<\/strong>.notifyDataSetChanged();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;cursor.close();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;dbHelper.close();<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>API :<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static <\/strong>String <em>url<\/em>=<strong>&#8220;https:\/\/liastaging.com\/soluk\/customer\/addpeople&#8221;<\/strong>;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public static <\/strong>String <em>urlget<\/em>=<strong>&#8220;https:\/\/liastaging.com\/soluk\/customer\/listpeople&#8221;<\/strong>;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Errors I faced:<\/strong><\/h3>\n\n\n\n<h3 class=\"wp-block-heading\">1. No such column in database&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In constructor, need to mention sqlite version, here i mentioned as 1&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public <\/strong>DbHelper( Context context) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>super<\/strong>(context,<strong><em>DATABASE_NAME<\/em><\/strong>, <strong>null<\/strong>, 1);<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Then I changed to version 2 and changed some static variables values like the name of the database and table name.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The error occurs because the database was created already with old version 1 and old table names so override was not supported there.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Solution:<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Clear cache data or uninstall the app and run again to create a new database.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I correct the syntax for creating col name<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">String <strong>CREATE_NEWUSER_TABLE <\/strong>= <strong>&#8220;CREATE TABLE &#8221; <\/strong>+ <strong><em>TABLE_NAME <\/em><\/strong>+ <strong>&#8221; (&#8220;<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/strong>+ <strong><em>USER_COL_ID <\/em><\/strong>+ <strong>&#8221; INTEGER PRIMARY KEY AUTOINCREMENT, &#8221; <\/strong>+ <strong><em>NAME <\/em><\/strong>+<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>&#8221; TEXT, &#8221; <\/strong>+ <strong><em>SYNC_STATUS <\/em><\/strong>+ <strong>&#8221; INTEGER&#8221; <\/strong>+ <strong>&#8220;)&#8221;<\/strong>;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">In recycler view UI , the text was not displayed<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">In the model class\u2019s constructor,&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I generate a default constructor<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>public <\/strong>Contact(String name, <strong>int <\/strong>sync_status) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>Name <\/strong>= name;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;<strong>Sync_status <\/strong>= sync_status;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">}<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But I declare the String variable as &nbsp; <strong>private <\/strong>String <strong>Name<\/strong>;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;In the default constructor, it was a &nbsp; String name.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Solution:<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>public <\/strong>Contact(String Name, <strong>int <\/strong>Sync_status) {<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<strong>this<\/strong>.setName(Name):}<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusion:<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">If you still wonder if SQL is the better solution it requires less maintenance and it\u2019s more reliable as well. If your device is local storage that has low concurrency then needn&#8217;t wink.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full\"><a class=\"https:\/\/www.liainfraservices.com\/contact\" href=\"https:\/\/www.liainfraservices.com\/contact\" target=\"_blank\" rel=\"https:\/\/www.liainfraservices.com\/contact noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"729\" height=\"218\" src=\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/04\/Transform-Your-Innovative-Ideas-into-INCREDIBLE-APPS-2.jpg\" alt=\"Readymade e-commerce website build-in 2 days - lia infraservices\" class=\"wp-image-761\" srcset=\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/04\/Transform-Your-Innovative-Ideas-into-INCREDIBLE-APPS-2.jpg 729w, https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/04\/Transform-Your-Innovative-Ideas-into-INCREDIBLE-APPS-2-300x90.jpg 300w\" sizes=\"auto, (max-width: 729px) 100vw, 729px\" \/><\/a><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Do you have an idea that needs to be built in the way you look for?&nbsp;Rush not, take a moment to peek at our works by a <strong><a href=\"https:\/\/www.liainfraservices.com\/mobile-app-development-company-in-chennai\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">mobile app development company in Chennai<\/span><\/a><\/strong>. Lia infraservices has been a stand-alone <a href=\"https:\/\/www.liainfraservices.com\/mobile-app-development-company-in-chennai\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">iOS App Development Company in Chennai<\/span><\/a> as well as an <strong><a href=\"https:\/\/www.liainfraservices.com\/mobile-app-development-company-in-chennai\" target=\"_blank\" rel=\"noreferrer noopener\"><span class=\"has-inline-color has-vivid-cyan-blue-color\">Android App Development company in Chennai<\/span><\/a><\/strong>.&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It\u2019s true that you can\u2019t compare SQLite with My SQL or Oracle due to the nature of work being entirely different but you should really know how SQLite can make a difference.&nbsp; But before that, if you don\u2019t know How to Store Mobile App Data Offline using SQLite yet LIA infraservices the leading mobile app&#8230;<\/p>\n","protected":false},"author":1,"featured_media":955,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"tessera_post_format_link":""},"tesserakbcats":[69],"tesserakbtags":[80,123,181,70,81,180,182],"class_list":["post-954","tesserakb","type-tesserakb","status-publish","format-standard","has-post-thumbnail","hentry","tesserakbcats-mobile-app-development","tesserakbtags-android-app-development","tesserakbtags-api","tesserakbtags-db","tesserakbtags-digital-marketing-services","tesserakbtags-ios-app-development","tesserakbtags-sqlite","tesserakbtags-ui"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES<\/title>\n<meta name=\"description\" content=\"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES\" \/>\n<meta property=\"og:description\" content=\"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/\" \/>\n<meta property=\"og:site_name\" content=\"LIAINFRASERVICES\" \/>\n<meta property=\"article:modified_time\" content=\"2021-10-19T08:06:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"512\" \/>\n\t<meta property=\"og:image:height\" content=\"315\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/\",\"url\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/\",\"name\":\"How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES\",\"isPartOf\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg\",\"datePublished\":\"2021-10-18T10:54:01+00:00\",\"dateModified\":\"2021-10-19T08:06:26+00:00\",\"description\":\"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage\",\"url\":\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg\",\"contentUrl\":\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg\",\"width\":512,\"height\":315,\"caption\":\"How to Store Mobile App Data Offline using SQLite - Lia infraservices\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.liainfraservices.com\/kbarticles\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Store Mobile App Data Offline using SQLite\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#website\",\"url\":\"https:\/\/www.liainfraservices.com\/kbarticles\/\",\"name\":\"LIAINFRASERVICES\",\"description\":\"committed to the values\",\"publisher\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.liainfraservices.com\/kbarticles\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#organization\",\"name\":\"LIAINFRASERVICES\",\"url\":\"https:\/\/www.liainfraservices.com\/kbarticles\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/01\/ya.png\",\"contentUrl\":\"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/01\/ya.png\",\"width\":200,\"height\":60,\"caption\":\"LIAINFRASERVICES\"},\"image\":{\"@id\":\"https:\/\/www.liainfraservices.com\/kbarticles\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES","description":"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/","og_locale":"en_US","og_type":"article","og_title":"How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES","og_description":"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.","og_url":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/","og_site_name":"LIAINFRASERVICES","article_modified_time":"2021-10-19T08:06:26+00:00","og_image":[{"width":512,"height":315,"url":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/","url":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/","name":"How to Store Mobile App Data Offline using SQLite - LIAINFRASERVICES","isPartOf":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage"},"image":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage"},"thumbnailUrl":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg","datePublished":"2021-10-18T10:54:01+00:00","dateModified":"2021-10-19T08:06:26+00:00","description":"Learn 7 steps to Store Mobile App Data Offline using SQLite by Lia Infraservices - The No.1 Mobile App Development Company in Chennai.","breadcrumb":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#primaryimage","url":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg","contentUrl":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/10\/How-to-Store-Mobile-App-Data-Offline-using-SQLite.jpg","width":512,"height":315,"caption":"How to Store Mobile App Data Offline using SQLite - Lia infraservices"},{"@type":"BreadcrumbList","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/how-to-store-mobile-app-data-offline-using-sqlite\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.liainfraservices.com\/kbarticles\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/www.liainfraservices.com\/kbarticles\/knowledgebase\/"},{"@type":"ListItem","position":3,"name":"How to Store Mobile App Data Offline using SQLite"}]},{"@type":"WebSite","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#website","url":"https:\/\/www.liainfraservices.com\/kbarticles\/","name":"LIAINFRASERVICES","description":"committed to the values","publisher":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.liainfraservices.com\/kbarticles\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#organization","name":"LIAINFRASERVICES","url":"https:\/\/www.liainfraservices.com\/kbarticles\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#\/schema\/logo\/image\/","url":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/01\/ya.png","contentUrl":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-content\/uploads\/2021\/01\/ya.png","width":200,"height":60,"caption":"LIAINFRASERVICES"},"image":{"@id":"https:\/\/www.liainfraservices.com\/kbarticles\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/tesserakb\/954","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/tesserakb"}],"about":[{"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/types\/tesserakb"}],"author":[{"embeddable":true,"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/comments?post=954"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/media\/955"}],"wp:attachment":[{"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/media?parent=954"}],"wp:term":[{"taxonomy":"tesserakbcats","embeddable":true,"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/tesserakbcats?post=954"},{"taxonomy":"tesserakbtags","embeddable":true,"href":"https:\/\/www.liainfraservices.com\/kbarticles\/wp-json\/wp\/v2\/tesserakbtags?post=954"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}