SQLite Insert Operation in Xamarin iOS

Introduction

Xamarin is a platform to develop cross-platform and multi-platform apps (for example, Windows phone, Android and iOS). In Xamarin platform, the code sharing concept is used. In Xamarin Studio, Visual Studio is also available.
Prerequisites 
  • Xamarin Studio
  • Xcode
The steps given below are required to be followed in order to insert data into SQLite database in Xamarin iOS, using Xamarin Studio.

Step 1

Go to Xamarin Studio.

Click New Solution—> select iOS—>select App--> Choose single View App. Afterwards, click Next.

 

Step 2

In this step, configure your app. Give the app name (Ex:sample), Organization Identifier. Afterwards, click Next.

 
 
Step 3

In this step, give your project name (Ex: Sample) and solution name (Ex: Sample). Give the path of your project. Afterwards, click Create.

 

Step 4

Subsequently, go to the solution. In the solution, get all the files and sources in your project. Now, select Main.storyboard and double click to open Main.storyboard page.
 
 

Step 5

After opening the Main.storyboard, you can design the page, as per your desire.
 
 

Step 6

In this step, design your app, using storyboard and Toolbox.
  • Button(btnCreateDB)
  • Button(btnInsert)
  • TextField(txtName)
  • TextField(txtAge)
  • Label(lblDbPath)
  • Label(lblDisplay)
 
 
Step 7

In this step, add one package in your project.
  • sqlite.net
Go to Solution Explorer—>Package—>Add Package.

Now, choose Mobile sqlite.net Crashes and select Version. Afterwards, click Add Package.

 

Step 8

In this step, add one class file name called (Student.cs).

This class is called Student table.
 
 

Step 9

In this step, go to Student.cs page. Write the code given below.

Student.cs
  1. using System;  
  2. using SQLite;  
  3. namespace XamariniOSSQLite {  
  4.     public class Student {  
  5.         [PrimaryKey, AutoIncrement]  
  6.         public int id {  
  7.             get;  
  8.             set;  
  9.         }  
  10.         public string Name {  
  11.             get;  
  12.             set;  
  13.         }  
  14.         public string Age {  
  15.             get;  
  16.             set;  
  17.         }  
  18.     }  
  19. }  
 

Step 10

In this step, go to the ViewController.cs page. Write the code given below.

ViewController.cs 
  1. using System;  
  2. using UIKit;  
  3. using System.IO;  
  4. using SQLite;  
  5. namespace XamariniOSSQLite {  
  6.     public partial class ViewController: UIViewController {  
  7.         public static string DbName = "SQLitedb.db3";  
  8.         public static string DbPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), DbName);  
  9.         protected ViewController(IntPtr handle): base(handle) {  
  10.             // Note: this .ctor should not contain any initialization logic.  
  11.         }  
  12.         public override void ViewDidLoad() {  
  13.             base.ViewDidLoad();  
  14.             // Perform any additional setup after loading the view, typically from a nib.  
  15.         }  
  16.         partial void BtnInsert_TouchUpInside(UIButton sender) {  
  17.             InsertData();  
  18.         }  
  19.         partial void BtnCreate_TouchUpInside(UIButton sender) {  
  20.             CreateDB();  
  21.         }  
  22.         public void CreateDB() {  
  23.             try {  
  24.                 var db = new SQLiteConnection(DbPath);  
  25.                 db.CreateTable < Student > ();  
  26.                 lblDBName.Text = "DB Path:" + DbPath;  
  27.             } catch (Exception e) {  
  28.                 Console.WriteLine(e);  
  29.             }  
  30.         }  
  31.         public void InsertData() {  
  32.             try {  
  33.                 string name = txtName.Text;  
  34.                 string age = txtAge.Text;  
  35.                 var student = new Student {  
  36.                     Name = name, Age = age  
  37.                 };  
  38.                 var db = new SQLiteConnection(DbPath);  
  39.                 db.Insert(student);  
  40.                 lblDisplay.Text = name + ":" + age;  
  41.             } catch (Exception e) {  
  42.                 Console.WriteLine(e);  
  43.             }  
  44.         }  
  45.         public override void DidReceiveMemoryWarning() {  
  46.             base.DidReceiveMemoryWarning();  
  47.             // Release any cached data, images, etc that aren't in use.  
  48.         }  
  49.     }  
  50. }  


Step 11

Now, go to Run option, choose Debug, the list of iPhone and iPad Simulators, which are available. You can choose any one Simulator and run it.
 
 

Output

After few seconds, the app will start running on your iPhone Simulator. You will see your app working successfully.

You can click Create DB button .Now, SQLite database will be created successfully. Afterwards, give the input, click Insert Data and the data will be inserted successfully



Summary

This was the process of how to insert data into SQLite database in Xamarin iOS,  using Xamarin Studio.