SQLite数据库操作
发布时间:2020-12-12 23:46:10 所属栏目:百科 来源:网络整理
导读:今天学习了SQLLite数据的的相关内容。SQLLite是Android内置的数据库,既有自己独立的增删改查方法,又支持sql语句的增删改查。 下面是使用sql语句的来操作SQLLite数据库的demo: 步骤: 当用户点击“插入”按钮时,将输入的数据插入到数据库中 1、创建一个my
今天学习了SQLLite数据的的相关内容。SQLLite是Android内置的数据库,既有自己独立的增删改查方法,又支持sql语句的增删改查。 下面是使用sql语句的来操作SQLLite数据库的demo: 步骤: 当用户点击“插入”按钮时,将输入的数据插入到数据库中 MainActivity.java package lzl.edu.com.dbtest; import android.app.Activity; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.Window; import android.widget.Button; import android.widget.EditText; import android.widget.ListView; import android.widget.SimpleCursorAdapter; public class MainActivity extends Activity { Button mInsert; EditText mName,mSex; ListView mListView; public static final String CREATE_TABLE = "Create table user(_id integer primary " + "key autoincrement,name varchar(50),sex varchar(50))"; SQLiteDatabase db; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); mInsert = (Button)findViewById(R.id.insert_btn); mName = (EditText)findViewById(R.id.myname); mSex = (EditText)findViewById(R.id.mysex); mListView = (ListView)findViewById(R.id.mylistview); // 1、创建一个my.db3数据库,此处需要使用绝对路径。 db = SQLiteDatabase.openOrCreateDatabase(this.getFilesDir().toString()+"/my.db3",null); Log.i("lujing---",this.getFilesDir().toString()+"/my.db3"); /** * 使用sql语句进行数据库的存储操作 1、创建一个my.db3数据库,此处需要使用绝对路径。 2、定义一个user表,属性包括姓名name 性别sex 3、定义两个编辑框,输入姓名和性别 4、点击插入数据后,将数据插入(insert)到数据库表中 5、使用ListView将所有数据显示出来 */ mInsert.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //2.获得输入框中输入的内容 String name = mName.getText().toString(); String sex = mSex.getText().toString(); try { //插入数据 db.execSQL("insert into user values(null,?,?)",new String[]{name,sex}); // 查询数据 Cursor cursor = db.rawQuery("select * from user ",null); inflateList(cursor); }catch (SQLiteException e){ Log.i("Create Table","数据库表不存在"); db.execSQL(CREATE_TABLE); //插入数据 db.execSQL("insert into user values(null,null); inflateList(cursor); } } }); } //将数据库中的数据显示到 ListViewz中 public void inflateList(Cursor cursor){ //SimpleCursorAdapter和simpleAdapter传入的数据类似,就是一个是封装了cursor对象,另一个封装了List集合 SimpleCursorAdapter simpleCursorAdapter = new SimpleCursorAdapter(this,R.layout.line,cursor,new String[]{"name","sex"},new int[]{R.id.name,R.id.sex}); mListView.setAdapter(simpleCursorAdapter); } @Override protected void onDestroy() { super.onDestroy(); if(db!=null&&db.isOpen()){ db.close(); } } }activity_main.xml <RelativeLayout 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:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <LinearLayout android:id="@+id/fistLinear" android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="姓名"/> <EditText android:id="@+id/myname" android:layout_width="321dp" android:layout_height="wrap_content" /> </LinearLayout> <LinearLayout android:id="@+id/secondLinear" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/fistLinear" android:orientation="horizontal"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="性别"/> <EditText android:id="@+id/mysex" android:layout_width="305dp" android:layout_height="wrap_content" /> </LinearLayout> <Button android:id="@+id/insert_btn" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_below="@+id/secondLinear" android:text="插入信息"/> <ListView android:id="@+id/mylistview" android:layout_below="@+id/insert_btn" android:layout_width="wrap_content" android:layout_height="match_parent"></ListView> </RelativeLayout>line.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal"> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <TextView android:layout_width="250dp" android:layout_height="wrap_content" android:text="姓名" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/name"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical" > <TextView android:layout_width="50dp" android:layout_height="wrap_content" android:text="性别"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/sex"/> </LinearLayout> </LinearLayout> </LinearLayout> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |