難道我學習了SQLite?

這是一個正經的文章。。

 ————什麼是SQLite?

SQLite是一款輕型的數據。

那我們先來看一下具體實例吧~~~

新增實體類Student

 private String sql = "create table student("+"id integer primary ket autoincrement not null, "+
            "age integer,"+"name text,"+"score real"+")";

插入一個數據

public static int Insert<T>(T obj)  
        {  
            int count;  
            using (var conn = GetDbConnection())  
            {  
                count=conn.Insert(obj);  
            }  
            return count;  
        }  
插入一個List列表
public static int Insert<T>(List<T> objList)  
        {  
            int count=0;  
            using (var conn = GetDbConnection())  
            {  
                foreach (var item in objList)  
                {  
                    count+=conn.Insert(item);  
                }  
            }  
            return count;  
        }  
刪除一個數據
public static void Delete<T>(T obj)  
       {  
           using (var conn = GetDbConnection())  
           {  
               conn.Delete(obj);  
           }  
       }  

查詢數據

public static List<T> Find<T>(string query) where T : class  
       {  
           using (var conn = GetDbConnection())  
           {  
               return conn.Query<T>(query);  
           }  
       }  

更新數據

 public static int Update<T>(T obj)   
{  
            using (var conn = GetDbConnection())  
            {  
                return conn.Update(obj);  
            }  
}  

代碼展示

xml文件比較簡單。這裏只有插入和查詢

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context="com.example.lenovo.myapplication.MainActivity">

    <EditText
        android:id="@+id/name_et"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <Button
        android:id="@+id/insert_btn"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:text="插入"/>
    <Button
        android:id="@+id/search_btn"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:text="查詢"/>


</LinearLayout>
package com.example.lenovo.myapplication;

import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity implements View.OnClickListener{
    private Button insertBtn;
    private Button searchBtn;
    private EditText nameEt;
    private  DBHelper dbHelper;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        bind();
        dbHelper = new DBHelper(this,"mydb",null,1);
    }

    private void bind() {
        insertBtn = findViewById(R.id.insert_btn);
        nameEt = findViewById(R.id.name_et);
        searchBtn =findViewById(R.id.search_btn);

        insertBtn.setOnClickListener(this);
        searchBtn.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        switch (view.getId()){
            case R.id.insert_btn:
                SQLiteDatabase sqLiteDatabase = dbHelper.getWritableDatabase();
                ContentValues values = new ContentValues();
                values.put("name",nameEt.getText().toString());
                sqLiteDatabase.insert("student",null,values);

            break;
            case R.id.search_btn:
                break;

        }

    }
}

下面是DBHelper

package com.example.lenovo.myapplication;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * Created by lenovo on 2018/3/20.
 */

public class DBHelper extends SQLiteOpenHelper {
    private String sql = "create table student("+"id integer primary ket autoincrement not null, "+
            "age integer,"+"name text,"+"score real"+")";
    public DBHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
        super(context, name, factory, version);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(sql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int i, int i1) {

    }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章