package com.example.njupt.zhb.sqlite1; import java.util.ArrayList; import java.util.List; import android.os.Bundle; import android.util.Log; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; import android.widget.Toast; import android.app.Activity; import android.content.ContentValues; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.view.View; import android.view.View.OnClickListener; public class MainActivity extends Activity implements OnClickListener{ public static final String DB_NAME="studentdata.db"; Button insertBtn; Button updataGBtn; Button updataABtn; Button deleteBtn; Button selectBtn; Button displayBtn; Button closeBtn; ListView mListView; SQLiteDatabase db; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mListView=new ListView(this); BtnInit(); OpenCreateDB(); } public void OpenCreateDB(){ db = openOrCreateDatabase(DB_NAME, this.MODE_PRIVATE, null); db.execSQL("DROP TABLE IF EXISTS students"); db.execSQL("CREATE TABLE IF NOT EXISTS students (_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR, age INTEGER,grade INTEGER, info VARCHAR)"); } //插入数据到students表 public void InsertData(){ Student liSi =new Student("李四", 22, 87, "南京邮电大学 通信工程"); Student liHua = new Student("李华", 23, 78, "南京邮电大学 软件工程"); db.execSQL("INSERT INTO students VALUES (NULL,?,?,?,?)", new Object[]{"张三",21,98,"南京邮电大学 电子信息工程"}); db.execSQL("INSERT INTO students VALUES (NULL,?,?,?,?)", new Object[]{liSi.name,liSi.age,liSi.grade,liSi.info}); db.execSQL("INSERT INTO students VALUES (NULL,'王五',19,99,'南京邮电大学 网络工程')"); ContentValues cvOfLiHua = new ContentValues(); cvOfLiHua.put("name", liHua.name); cvOfLiHua.put("age", liHua.age); cvOfLiHua.put("grade", liHua.grade); cvOfLiHua.put("info", liHua.info); db.insert("students", null, cvOfLiHua); Log.d("msg","插入结束"); Toast.makeText(this, "插入数据完成!", Toast.LENGTH_SHORT).show(); } public void UpdateGrade(){ ContentValues cv = new ContentValues(); cv.put("grade", 85); //更新数据,将李四的成绩改为85分 db.update("students", cv, "name = ?", new String[]{"李四"}); Log.d("msg","李四的成绩已更新"); Toast.makeText(this, "李四的成绩已更新", Toast.LENGTH_SHORT).show(); } public void UpdateAge(){ String sqlString="UPDATE students SET age=18 WHERE grade= 78"; db.execSQL(sqlString); Log.d("msg","李华的年龄已更新"); Toast.makeText(this, "李华的年龄已更新", Toast.LENGTH_SHORT).show(); } public void Delete(){ db.execSQL("DELETE FROM students WHERE name='张三'"); Log.d("msg","张三的信息已经被删除"); Toast.makeText(this, "张三的信息已经被删除", Toast.LENGTH_SHORT).show(); } public void Select(){ List<String> list=new ArrayList<String>(); Cursor c = db.rawQuery("SELECT * FROM students WHERE grade >= ?", new String[]{"86"}); Log.d("msg","--------------大于86分的同学----------------------------"); while (c.moveToNext()) { Student person = new Student(); person._id = c.getInt(c.getColumnIndex("_id")); person.name = c.getString(c.getColumnIndex("name")); person.grade=c.getInt(c.getColumnIndex("grade")); person.age = c.getInt(c.getColumnIndex("age")); person.info = c.getString(c.getColumnIndex("info")); String string=""+person._id+" "+person.name+" "+person.grade+" "+person.age+" "+person.info; list.add(string); Log.d("msg",string); } c.close(); ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,list); mListView.setAdapter(adapter); } public void Display(){ List<String> list=new ArrayList<String>(); Cursor c = db.rawQuery("SELECT * FROM students", null); while (c.moveToNext()) { Student person = new Student(); person._id = c.getInt(c.getColumnIndex("_id")); person.name = c.getString(c.getColumnIndex("name")); person.grade=c.getInt(c.getColumnIndex("grade")); person.age = c.getInt(c.getColumnIndex("age")); person.info = c.getString(c.getColumnIndex("info")); String string=""+person._id+" "+person.name+" "+person.grade+" "+person.age+" "+person.info; list.add(string); Log.d("msg",string); } c.close(); ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,list); mListView.setAdapter(adapter); } public void Close(){ db.close(); } public void BtnInit(){ insertBtn=(Button)findViewById(R.id.insert); updataGBtn=(Button)findViewById(R.id.updataG); updataABtn=(Button)findViewById(R.id.updataA); deleteBtn=(Button)findViewById(R.id.delete); selectBtn=(Button)findViewById(R.id.select); displayBtn=(Button)findViewById(R.id.display); closeBtn=(Button)findViewById(R.id.close); mListView=(ListView)findViewById(R.id.listview); insertBtn.setOnClickListener(this); updataABtn.setOnClickListener(this); updataGBtn.setOnClickListener(this); deleteBtn.setOnClickListener(this); selectBtn.setOnClickListener(this); displayBtn.setOnClickListener(this); closeBtn.setOnClickListener(this); } @Override public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()){ case R.id.insert: InsertData(); break; case R.id.updataA: UpdateAge(); break; case R.id.updataG: UpdateGrade(); break; case R.id.display: Display(); break; case R.id.delete: Delete(); break; case R.id.select: Select(); break; case R.id.close: Close(); break; } } }
http://blog.csdn.net/nupt123456789/article/details/7891887
相关推荐
Android SQLite 数据库操作报告 一、实验目的 Android 实验报告的主要目的是熟悉 Android 平台的文件操作、掌握 Android SQLite 数据库的设计和应用、熟悉 XML 和 JSON 文件的读取。通过本实验,用户可以掌握 ...
总结起来,Qt的SQLite数据库操作封装涉及到以下几个关键点: 1. 生成和打开数据库文件。 2. 执行SQL语句,包括查询、插入、更新和删除。 3. 设计接口,提供增删改查的重载功能。 4. 实现事务管理,确保数据一致性。 ...
在`sqlitDemo`项目中,你可能可以找到一个简单的SQLite数据库操作示例,包括创建数据库、表格,以及插入、查询、更新和删除数据等操作。通过研究这个示例,你可以更好地理解如何在实际的iOS应用中使用SQLite数据库。
这个"SQLite数据库操作demo"旨在提供一个基础的示例,帮助初学者了解如何在Android环境中进行SQLite数据库的创建、查询、更新和删除等基本操作。 首先,Android中的SQLite数据库操作通常涉及以下步骤: 1. **创建...
总之,`SQLiteDao`类是C#中对SQLite数据库操作的抽象封装,它使得数据库操作更加简洁、安全且易于维护。通过结合其他辅助类,如扩展方法和加密工具,我们可以构建一个强大而全面的数据库操作框架,满足各种项目需求...
SQLite数据库操作工具使得用户能够方便地管理和操作SQLite数据库,进行数据的增删改查等操作,而无需深入了解复杂的SQL语法或数据库管理系统。 SQLite Studio是一款非常实用的SQLite数据库管理工具,它提供了一个...
在这个"Android SQLite数据库操作Demo"中,我们将探讨如何在Android应用中创建、查询、更新和删除SQLite数据库的数据。 1. **数据库初始化** 在Android中,我们通常通过扩展SQLiteOpenHelper类来初始化SQLite...
SQLite数据库操作,供大家一起共同分享学习。
本篇将基于一个名为"Android SQLite数据库操作demo"的示例项目,探讨如何在Android中进行SQLite数据库的相关操作。原作者的博客地址为http://blog.csdn.net/liuhe688/article/details/6715983。 首先,我们来看一下...
Sqlite数据库操作
SQLite数据库操作在Delphi中的实现通常依赖于特定的组件或库,如TSQLConnection、TSQLDataset等。 首先,让我们看看数据库连接的部分。在Delphi中,我们通常会使用ADO(ActiveX Data Objects)或ODBC(Open ...
QT连接Sqlite数据库操作 在QT开发中,连接Sqlite数据库是一种常见的操作。通过本文,读者将了解如何使用QT连接Sqlite数据库,並实现基本的数据库操作。 一、QT连接Sqlite数据库的准备工作 在使用QT连接Sqlite...
下面将详细解释Sqlite数据库操作类的相关知识点,包括其工作原理、单例模式的应用以及如何进行调用。 一、Sqlite数据库基本操作 1. 数据库创建:使用SQLiteOpenHelper子类,重写onCreate()方法,这里会执行数据库...
综上所述,SQLiteBrowser作为一个强大的SQLite数据库操作工具,为开发者和非开发者提供了一个直观的环境,便于进行数据库的创建、管理、查询以及数据的导入导出。无论是进行开发工作还是日常的数据管理,...
总的来说,`sqlite数据库操作工具类(含jsqlite.jar包)`提供了便捷的方式来管理SQLite数据库,简化了Java应用程序中的数据库操作。通过`DBManager.java`工具类,开发者可以快速集成SQLite功能,而无需深入了解底层的...
"SQLite数据库操作软件"指的是一个专为SQLite设计的图形用户界面(GUI)工具,它使用户能够方便地进行数据库的创建、查询、更新、删除等操作,而无需深入理解复杂的SQL语法。 该软件被描述为"非常不错的绿色",这...
这个项目的核心在于"SQLite数据库操作封装",它允许开发者通过简单的API调用来执行常见的数据库任务,如创建表、插入数据、查询数据以及事务处理。具体来说,`SQLiteOperate.dcu`和`uTestSqlite.dcu`可能是包含封装...
总的来说,"sqlite数据库操作封装类"是一个强大的工具,可以帮助开发者更高效、更安全地操作SQLite数据库,无论是简单的数据存储还是复杂的业务逻辑,都能提供便利。通过合理的接口设计和内部实现,可以极大地提升...
android SQLite数据库操作源码,包括如何建表,增删改查等操作