Android Studio下SQLite数据库的配置与使用(完)
一,AS开发app用,所用的数据库有限制,必须使用较小的SQLite(MySql和Sql Server想想就不显示)
但是该数据库并不需要我们单独下载,安装的SDK中已经有了,在C:AndroidSDKplatform-tools目录下
最下面一个exe文件就是,双击可以打开dos界面进行编写
将上述讲的SQLite的目录(C:AndroidSDKplatform-tools)添加到环境变量path下就可以完成配置
验证是否完成配置:打开dos界面,输入SQLite3,出现以下界面就表示成功了
二,分享一款SQLite3的可视化操作界面
黑框框虽然看起来逼格非常高,但是个人觉得太捞比了,主要是太麻烦了(个人很懒)
一个可视化界面的exe文件:SQLiteStudio 百度云盘地址 http://pan.baidu.com/s/1dES3Zep
不用安装,解压后直接使用
三,以下分享一个在百度上找了很久的很小的对于数据库增删改查操作的实践~~~
原文出处:http://www.jianshu.com/p/ee08f75b407c
<一>界面部分
我个人看法,开发app,首先可以把各个界面设计出来,这样也就明确了自己想要实现什么功能,那么在后面的代码实现过程中,就相应的有了目的性,界面不够,我们再添加就好了~
首先上两张图,也就是这个小project中的两个界面,也就是我们要实现的几个功能
界面一:显示所有学生名字,然后点某个人,跳到界面二
界面二:某个学生的具体信息,可以对这个学生进行删改,或者添加新同学~
1,首先创建一个project,名字随意
2,实现第一个页面布局activity_main.xml(也就是页面一)
(我个人直接把学习网站的代码拔过来了,但是会有一些warning)
比如:android:text="Add"
最好在strings.xml中配置一下 :
添加一条 <string name="add">Add</string>
然后改成android:text = "@string/add"
并不是说第一种错了,而是第二种规范性更棒,日后管理更新等操作更加方便,只需要在strings中改一下就ok了
1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 android:paddingLeft="@dimen/activity_horizontal_margin" 6 android:paddingRight="@dimen/activity_horizontal_margin" 7 android:paddingTop="@dimen/activity_vertical_margin" 8 android:paddingBottom="@dimen/activity_vertical_margin" 9 tools:context=".MainActivity"> 10 11 <Button 12 android:layout_width="wrap_content" 13 android:layout_height="wrap_content" 14 android:text="@string/add" 15 android:id="@+id/btnAdd" 16 android:layout_alignParentBottom="true" 17 android:layout_alignParentLeft="true" 18 tools:ignore="RtlHardcoded" /> 19 <ListView 20 android:id="@android:id/list" 21 android:layout_width="wrap_content" 22 android:layout_height="wrap_content" 23 android:layout_above="@+id/btnAdd" 24 /> 25 26 <Button 27 android:layout_width="wrap_content" 28 android:layout_height="wrap_content" 29 android:text="@string/ListAll" 30 android:id="@+id/btnGetAll" 31 tools:ignore="RtlHardcoded" 32 android:layout_alignParentBottom="true" 33 android:layout_toEndOf="@+id/btnAdd" /> 34 </RelativeLayout>
3,接下来,画出界面二
我们可以直接创建一个新的activity,因为没个界面都要配合一个动作的嘛~,因此可以直接new一个新的activity,StudentDetail.java
其布局为第二个页面activity_student_detail.xml
1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:id="@+id/activity_student_detail" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 android:paddingBottom="@dimen/activity_vertical_margin" 8 android:paddingLeft="@dimen/activity_horizontal_margin" 9 android:paddingRight="@dimen/activity_horizontal_margin" 10 android:paddingTop="@dimen/activity_vertical_margin" 11 tools:context="examples.ouc.com.sqlitedemo.StudentDetail"> 12 13 <TextView 14 android:layout_width="wrap_content" 15 android:layout_height="wrap_content" 16 android:text="@string/name" 17 android:id="@+id/tvName" 18 android:layout_alignParentTop="true" 19 android:layout_alignParentLeft="true" 20 android:layout_alignParentStart="true" 21 android:layout_marginTop="30dp" /> 22 23 <TextView 24 android:layout_width="wrap_content" 25 android:layout_height="wrap_content" 26 android:text="@string/email" 27 android:id="@+id/tvEmail" 28 android:layout_below="@id/tvName" 29 android:layout_alignParentLeft="true" 30 android:layout_alignParentStart="true" 31 android:layout_marginTop="30dp" /> 32 <TextView 33 android:layout_width="wrap_content" 34 android:layout_height="wrap_content" 35 android:text="@string/age" 36 android:id="@+id/tvAge" 37 android:layout_below="@id/tvEmail" 38 android:layout_alignParentLeft="true" 39 android:layout_alignParentStart="true" 40 android:layout_marginTop="30dp" /> 41 42 <EditText 43 android:layout_width="wrap_content" 44 android:layout_height="wrap_content" 45 android:id="@+id/etName" 46 android:inputType="textPersonName" 47 android:ems="10" 48 android:layout_above="@id/tvEmail" 49 android:layout_toEndOf="@id/tvName" 50 android:layout_alignParentRight="true" 51 android:layout_alignParentEnd="true" /> 52 53 54 <EditText 55 android:layout_width="match_parent" 56 android:layout_height="wrap_content" 57 android:id="@+id/etEmail" 58 android:layout_toEndOf="@id/tvEmail" 59 android:inputType="textEmailAddress" 60 android:ems="10" 61 android:layout_above="@id/tvAge" 62 android:layout_alignParentRight="true" 63 android:layout_alignParentEnd="true" /> 64 65 <Button 66 android:layout_width="wrap_content" 67 android:layout_height="wrap_content" 68 android:id="@+id/btnClose" 69 android:text="@string/close" 70 android:layout_alignParentBottom="true" 71 android:layout_alignParentRight="true" 72 /> 73 74 <Button 75 android:layout_width="wrap_content" 76 android:layout_height="wrap_content" 77 android:id="@+id/btnSave" 78 android:text="@string/save" 79 android:layout_alignParentBottom="true" 80 android:layout_toStartOf="@id/btnClose"/> 81 82 <Button 83 android:layout_width="wrap_content" 84 android:layout_height="wrap_content" 85 android:id="@+id/btnDelete" 86 android:text="@string/delete" 87 android:layout_alignParentBottom="true" 88 android:layout_toStartOf="@id/btnSave"/> 89 90 <EditText 91 android:layout_width="match_parent" 92 android:layout_height="wrap_content" 93 android:id="@+id/etAge" 94 android:inputType="number" 95 android:ems="10" 96 android:layout_alignBottom="@+id/tvAge" 97 android:layout_toEndOf="@+id/tvName" /> 98 </RelativeLayout>