Android开发—使用已有的sql数据库
2016-01-05 14:34
417 查看
先用SQLite管理工具,sqliteadmin 具体操作很简单,在这里我就不详细介绍的了,但有一个地方时候很值得注意的,就是用sqliteadmin创建数据库的时候,数据库保存的路径不能是中文路径,中文路径会出现下面的错误提示:
我在sqliteadmin 创建好数据库StuDB,里面的表如下:
将创建好的数据库在DDMS中点击
导入到data/data/程序的包名/
SQLiteTestActivity.java
main.xml
strings.xml
效果图:
我在sqliteadmin 创建好数据库StuDB,里面的表如下:
将创建好的数据库在DDMS中点击
导入到data/data/程序的包名/
SQLiteTestActivity.java
package com.lingdududu.test; import android.app.Activity; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class SQLiteTestActivity extends Activity { /** Called when the activity is first created. */ private EditText studentText; private EditText teacherText; private Button queryBtn; SQLiteDatabase stuDb; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); studentText = (EditText)findViewById(R.id.stu_name); teacherText = (EditText)findViewById(R.id.teacher_name); queryBtn = (Button)findViewById(R.id.query); queryBtn.setOnClickListener(new queryListener()); } class queryListener implements OnClickListener{ @Override public void onClick(View v) { //调用查询方法 query(); stuDb.close(); } } //查询方法 private void query() { //打开或者创建数据库 stuDb = SQLiteDatabase.openOrCreateDatabase("data/data/com.lingdududu.test/StuDB.s3db", null); try { String string =studentText.getText().toString(); String sql = "Select sname from Student where snumber="+string; Cursor cursor = stuDb.rawQuery(sql,null); cursor.moveToFirst(); teacherText.setText(cursor.getString(cursor.getColumnIndex("sname"))); } catch (Exception e) { Toast.makeText(this, "请检查输入的学生学号是否正确", Toast.LENGTH_LONG).show(); } } }
main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/input_name" /> <EditText android:id="@+id/stu_name" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <Button android:id="@+id/query" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="开始查询" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/teacher_name" /> <EditText android:id="@+id/teacher_name" android:layout_width="fill_parent" android:layout_height="wrap_content" android:editable="false" /> </LinearLayout>
strings.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, SQLiteTestActivity!</string> <string name="app_name">SQLiteTest</string> <string name="input_name">请输入学生学号</string> <string name="teacher_name">该学生的姓名</string> </resources>
效果图:
相关文章推荐
- Android NDK开发之 arm_neon.h文件ABI说明
- Android开发学习笔记:Service的简介和启动方式
- android DatePicker 点击文本框,禁止弹出键盘
- android中饼状图的实现方法
- 通过settings.db自定义Android系统默认设置
- Android开发学习笔记:Intent的简介以及属性的详解
- Android NDK开发之 NEON使用介绍
- Android使用Fragment打造万能页面切换框架
- Android压缩图片到100K以下并保持不失真的高效方法
- android studio 生成 aidl 文件
- Android开发中无处不在的设计模式——装饰者模式
- android集成开发环境搭建
- android glide的一些基本用法
- Android应用正确使用扩展SD卡,特别是安卓4.4以后的版本
- GitHub 优秀的 Android 开源项目
- Android apk动态加载机制的研究(二):资源加载和activity生命周期管理
- Android apk动态加载机制的研究(一)
- Android 出现java.lang.NoClassDefFoundError错误的一种解决方案
- Android开发学习笔记:5大布局方式详解
- Android studio 项目上传到JCentre