1.知识图谱
数据库的增删查改的功能实现模板
连接数据库,首先得在Java下新建一个.db包,在新建的db包下新建一个.db文件
DbHelper.java的代码如下:
- package com.yindan.db;
- import android.content.Context;
- import android.database.sqlite.SQLiteDatabase;
- import android.database.sqlite.SQLiteOpenHelper;
- import android.util.Log;
- /**
- * Created by Administrator on 2017/6/25 0025.
- */
- public class DbHelper extends SQLiteOpenHelper {
- /**
- *
- * @param context 上下文
- * @param name 数据库的名字,“文件名.db”
- * @param factory 数据库工厂,null
- * @param version 数据库版本
- */
- public DbHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
- super(context, name, factory, version);
- Log.i("test","构造方法");
- }
- //使用该方法,创建表
- //只会调用一次
- @Override
- public void onCreate(SQLiteDatabase db) {
- Log.i("test","创建表");
- db.execSQL("create table login (uid integer primary key autoincrement,uname,upass)");
- }
- //数据库版本,低-------》高
- @Override
- public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- Log.i("test","升级数据库版本");
- }
- //数据库版本 高----------》低
- // @Override
- // public void onDowngrade(SQLiteDatabase db, int oldVersion, int newVersion) {
- // super.onDowngrade(db, oldVersion, newVersion);
- // }
- }
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.cookie.android0625sqlite.MainActivity">
- <EditText
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="请输入用户名"
- android:id="@+id/et_main_uname"/>
- <EditText
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:hint="请输入密码"
- android:id="@+id/et_main_upass"/>
- <Button
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:onClick="operation"
- android:text="操作"/>
- </LinearLayout>
JAVA代码
- package com.example.cookie.android0625sqlite;
- import android.content.ContentValues;
- import android.database.Cursor;
- import android.database.sqlite.SQLiteDatabase;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.widget.EditText;
- import android.widget.Toast;
- import com.yindan.db.DbHelper;
- public class MainActivity extends AppCompatActivity {
- private EditText et_main_uname;
- private EditText et_main_upass;
- private SQLiteDatabase sqLiteDatabase;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- et_main_uname = (EditText) findViewById(R.id.et_main_uname);
- et_main_upass = (EditText) findViewById(R.id.et_main_upass);
- DbHelper dbHelper=new DbHelper(this,"CookieOne.db",null,1);
- sqLiteDatabase = dbHelper.getWritableDatabase();
- }
- public void operation(View view){
- String uname=et_main_uname.getText().toString();
- String upass=et_main_upass.getText().toString();
- //添加1
- // ContentValues contentValues=new ContentValues();
- // contentValues.put("uname",uname);
- // contentValues.put("upass",upass);
- // contentValues.putNull("uid");
- // sqLiteDatabase.insert("login","uname",contentValues);
- //添加2
- // for (int i = 0; i <100 ; i++) {
- // sqLiteDatabase.execSQL("insert into login (uname,upass) values ('小"+i+"','123')");
- // }
- //修改
- // ContentValues contentValues=new ContentValues();
- // contentValues.put("uname",uname);
- // contentValues.put("upass",upass);
- // sqLiteDatabase.update("login",contentValues,"uid=?",new String[]{1+""});
- //删除
- // sqLiteDatabase.delete("login","uid=?",new String[]{102+""});
- //查询
- //sqLiteDatabase.query();
- int pageNo=1;
- int pageSize=3;
- Cursor cursor= sqLiteDatabase.rawQuery("select * from login limit ?,?",new String[]{((pageNo-1)*pageSize)+"",pageSize+""});
- while (cursor.moveToNext()){
- int uid=cursor.getInt(cursor.getColumnIndex("uid"));
- String name=cursor.getString(cursor.getColumnIndex("uname"));
- String pass=cursor.getString(cursor.getColumnIndex("upass"));
- Log.i("test",uid+" "+name+" "+pass);
- }
- Toast.makeText(this, "操作", Toast.LENGTH_SHORT).show();
- }
- }