数据库

计应111 康绍博

Android系统在2007年由Google公司推出以来到现在得到了全世界人民的追捧,随之基于Android系统的软件也得到了兴起,如一些应用管理软件也就孕育而生了。说到应用软件可就不得不说一下基于Android的数据库了,因为大很多了管理软件都离不开数据库。今天我们就来谈论一下基于Android系统的数据库的一些基本操作。

一、数据库的创建

1、对Android系统数据库的创建就必须的先打开虚拟机,所以我们先打开虚拟机。

2、在Windows自带的DOS界面打开Eclipse下的android-sdks\platform-tools路径,因为我们要用到此路径下的一些工具。如下图:

 

3、接下来我们就输入“adb shell”进入简洁的Linux系统,然后用“cd”命令进入到“data/data”目录下用“mkdir”创建一个目录用于存放我们自己新建的数据库。如“cqvie.edu.cn”,最后在些目录下用“mkdir”创建一个“databases”文件夹来存放数据库。

4、当我们创建完所有的路径以后,一定要用“cd”命令进入到相应的目录下,不然在我们以后的程序中无法找到我们自己创建的数据库。(提示:在此阶段,我们一要明白自己在哪个目录下,不然我们很容易迷乱)

5、完成以上准备以后就用“sqlite3 test.db”命令进入数据表创建界面。(数据表的操作命令和SQL Server的命令完全一致)

6、在这里就举例创建一个数据表,create table lnh("no" INTEREG, "name" TEXT, "tel" TEXT);(一定是以分号“;”用为结束标识符)。

二、程序操作数据库

1、新建一个Android项目“Shujuku”,此项目的包名一定要跟刚刚那“cqvie.edu.cn”相同,不然程序无法找到相应数据库。

2、在"main.xml"文件中添加四个按钮和一个文本框(用于显示数据)。如下图:

 

3、首先为四个按钮和文本注册,再为四个按钮添加侦听器。代码如下:

 1 public class ShujukuActivity extends Activity implements OnClickListener {

 2     /** Called when the activity is first created. */

 3     @Override

 4     public void onCreate(Bundle savedInstanceState) {

 5         super.onCreate(savedInstanceState);

 6         setContentView(R.layout.main);

 7         btnAdd=(Button) findViewById(R.id.btnAdd);//获取添加按钮

 8         btnDel=(Button) findViewById(R.id.btnDel);//获取删除按钮

 9         btnUpdate=(Button) findViewById(R.id.btnUpdate);//获取修改按钮

10         btnSelect=(Button) findViewById(R.id.btnSelect);//获取查询按钮

11         txtContent=(EditText) findViewById(R.id.txtContent);

12         btnAdd.setOnClickListener(this);//为添加按钮添加侦听器

13         btnDel.setOnClickListener(this);//为删除按键添加侦听器

14         btnUpdate.setOnClickListener(this);//为修改按键添加侦听器

15         btnSelect.setOnClickListener(this);//为查询按键添加侦听器

16     }

17     Button btnAdd,btnDel,btnUpdate,btnSelect;

18     EditText txtContent;

19 }

 

4、最后在单击方法中为各按钮编写单击事件代码。代码如下:

 

 1 public void onClick(View V) {

 2         // TODO Auto-generated method stub

 3         Button id=(Button) V;

 4         DBHelper helper=new DBHelper(this,"test.db",null,1);

 5         SQLiteDatabase db=helper.getWritableDatabase();

 6         if(id.getId()==R.id.btnAdd)

 7         {

 8             String SQL="INSERT INTO lnh(no,name,tel) VALUES(1,'张三','12345')";

 9             db.execSQL(SQL);//执行添加语句

10             txtContent.setText("添加成功!");

11         }

12         else if(id.getId()==R.id.btnDel)

13         {

14             String SQL="delete from lnh where tel='12345'";

15             db.execSQL(SQL);//执行删除语句

16             txtContent.setText("删除成功!");

17         }

18         else if(id.getId()==R.id.btnUpdate)

19         {

20             String SQL="update lnh set tel='123' where tel='12345'";

21             db.execSQL(SQL);//执行修改语句

22             txtContent.setText("修改成功!");

23         }

24         else if(id.getId()==R.id.btnSelect)

25         {

26             Cursor cursor=db.query("lnh", new String[] {"*"}, "no=?", new String[] {"1"}, null, null, null);//查询姓名为张三的所有记录

27             String s="查询结果\n";

28             while(cursor.moveToNext())

29             {

30                 int no=cursor.getInt(cursor.getColumnIndex("no"));//获取数据库NO字段

31                 String name=cursor.getString(cursor.getColumnIndex("name"));//获取数据库NAME字段

32                 String tel=cursor.getString(cursor.getColumnIndex("tel"));//获取数据库TEL字段

33                 s+=no+"   "+name+"   "+tel+"\n";

34             }

35             txtContent.setText(s);

36         }

37     }

 

三、感悟

      好久没有写博客,今天又抽了点时间写了这篇博客,就当是为我自己以后自习之用吧。在写这些博客同时,真的锻炼了我的写作能力,让我能很明白的知道要怎样描述才能让大家明白我想表达东西。其实Android应用软件做起来也挺好玩的,正所谓还有什么会比让自己做它的时候感觉很快乐而很享受呢。

 

posted @ 2013-06-21 14:14  康绍博a  阅读(249)  评论(0)    收藏  举报