【android基础】android sqllite操作

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/tv1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="@dimen/padding_medium"
        android:text="@string/hello_world"
        tools:context=".MainActivity" />

</LinearLayout>

MainActivity.java

package com.example.android.sample4;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
import org.apache.http.util.EncodingUtils;
import android.database.sqlite.SQLiteDatabase;
import android.content.ContentValues;
import android.database.Cursor;

public class MainActivity extends Activity {
    TextView tv1;
    MySQLiteHelper myHelper;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv1 = (TextView)this.findViewById(R.id.tv1);
        myHelper = new MySQLiteHelper(this,"my.db",null,1);
        insertAndUpdateData(myHelper);
        tv1.setText(queryData(myHelper));
    }
    public void insertAndUpdateData(MySQLiteHelper myHelper)
    {
    	SQLiteDatabase db = myHelper.getWritableDatabase();
    	db.execSQL("insert into hero_info(name,level) values ('Hero1',1)");
    	ContentValues values = new ContentValues();
    	values.put("name", "Hero2");
    	values.put("level", 2);
    	db.insert("hero_info", "id", values);
    	values.clear();
    	values.put("name", "Hero2");
    	values.put("level", 3);
    	db.update("hero_info", values, "level = 2", null);
    	db.close();
    }
    public String queryData(MySQLiteHelper myHelper)
    {
    	String result="";
    	SQLiteDatabase db = myHelper.getReadableDatabase();
    	Cursor cursor = db.query("hero_info", null, null, null, null, null, "id asc");
    	int nameIndex = cursor.getColumnIndex("name");
    	int levelIndex = cursor.getColumnIndex("level");
    	for(cursor.moveToFirst();!(cursor.isAfterLast());cursor.moveToNext())
    	{
    		result += cursor.getString(nameIndex) + "   ";
    		result += cursor.getString(levelIndex) + "  \n";
    	}
    	cursor.close();
    	db.close();
    	return result;
    }
    @Override
    public void onDestroy()
    {
    	SQLiteDatabase db = myHelper.getWritableDatabase();
    	db.delete("hero_info", "1", null);
    	super.onDestroy();
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

    
}

MySQLiteHelper.java

package com.example.android.sample4;

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

public class MySQLiteHelper extends SQLiteOpenHelper{
	public MySQLiteHelper(Context context,String name,CursorFactory factory,int version)
	{
		super(context,name,factory,version);
	}
	@Override
	public void onCreate(SQLiteDatabase db)
	{
		db.execSQL("create table if not exists hero_info(" +
				"id integer primary key," +
				"name varchar," +
				"level integer)");
	}
	@Override
	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值