import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper; /**
* 创建数据库帮助类 extends SQLiteOpenHelper
*/
public class MyDbOpenHelper extends SQLiteOpenHelper { /**
* 构造方法
*
* @param context
* 上下文
* @param name
* 数据库名称
* @param factory
* null
* @param version
* 数据库的版本号 >=1
* 只能升级不能降级
*/
public MyDbOpenHelper(Context context) {
super(context,"Data.db",null,1);
} /**
* 第一次创建数据库的时候调用
* 适合初始化数据库的表
*/
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table stu(_id integer primary key autoincrement,name varchar(20),num varchar(20))");
} /**
* 数据库升级时,调用
* 修改数据库的表
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
System.out.println("onUpgrade");
}
}


import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View; public class MainActivity extends Activity { @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
} public void insert(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("insert into stu('name','num') values (?,?)", new Object[] { "AAA", "110" });
// 释放资源
db.close();
} public void delete(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("delete from stu");
// 释放资源
db.close();
} public void update(View v) {
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("update stu set name=?",new String[]{"yadan"});
// 释放资源
db.close();
} public void query(View v){
// 1. 在内存中创建数据库帮助类的对象
MyDbOpenHelper helper = new MyDbOpenHelper(this);
// 2. 在磁盘上创建数据库文件
SQLiteDatabase db = helper.getWritableDatabase();
Cursor cursor = db.rawQuery("select * from stu", null);
while(cursor.moveToNext()){
String id = cursor.getString(0);
String name = cursor.getString(1);
String num = cursor.getString(2);
} // 释放资源
db.close();
}
}

用SQL语句操作Sqlite数据库的示例代码的更多相关文章

  1. Android中SQLite数据库操作(1)——使用SQL语句操作SQLite数据库

    下面是最原始的方法,用SQL语句操作数据库.后面的"Android中SQLite数据库操作(2)--SQLiteOpenHelper类"将介绍一种常用的android封装操作SQL ...

  2. 通过SQL语句操作Sqlite数据库

    一.数据库的创建 数据库版本为1 //Ctrl+Shift+U:大写 public static final String DATABASE_NAME ="zzw.db"; pub ...

  3. android Api操作SQLite数据库的示例代码

    import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.databa ...

  4. Electron中使用sql.js操作SQLite数据库

    推荐sql.js——一款纯js的sqlite工具. 一.关于sql.js sql.js(https://github.com/kripken/sql.js)通过使用Emscripten编译SQLite ...

  5. 使用sql语句创建和删除约束示例代码

    使用sql语句创建和删除约束  约束类型 主键约束(Primary Key constraint) --:要求主键列数据唯一,并且不允许为空.  唯一约束(Unique constraint) --: ...

  6. 通过Sql语句控制SQLite数据库增删改查

    person类属性有Intenger id,String name,Intenger  age,相应的构造方法和set get方法. package com.xh.tx.dao; import jav ...

  7. 043:Django使用原生SQL语句操作数据库

    Django使用原生SQL语句操作数据库 Django配置连接数据库: 在操作数据库之前,首先先要连接数据库.这里我们以配置 MySQL 为例来讲解. Django 连接数据库,不需要单独的创建一个连 ...

  8. Django中使用mysql数据库并使用原生sql语句操作

    Django自身默认使用sqlite3这个轻量级的数据库,但是当我们开发网站时,sqlite3就没有mysql好,sqlite3适合一些手机上开发使用的数据库. 准备的软件mysql数据库,版本5.7 ...

  9. 在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作

    在myeclipse中配置DB Driver(数据库用MySql),并在myeclipse执行sql语句操作 MyEclipse6.5    ,  mysq驱动jar包为mysql-connector ...

随机推荐

  1. Jmeter服务器压力测试使用说明

    Jmeter服务器压力测试使用说明 Apache JMeter是Apache组织开发的基于Java的压力测试工具. 官方地址:http://jmeter.apache.org/download_jme ...

  2. C和指针--链表

    1.链表的基本概念 链表(linked list)是一些包含数据的节点的集合.链表中的每个节点通过链或指针连接在一起.程序通过指针访问链表中的节点.通常节点是动态分配的. 2.链表的分类 链表可分为: ...

  3. 多线程threading模块

    python的多线程编程 简介 多线程编程技术可以实现代码并行性,优化处理能力,同时功能的更小划分可以使代码的可重用性更好.Python中threading和Queue模块可以用来实现多线程编程. 详 ...

  4. Qt 模型/视图结构

    MVC是一种与用户界面相关的设计模式.通过使用此模型,可以有效地分离数据和用户界面.MVC设计模式包含三要素:表示数据的模型(Model).表示用户界面的视图(View)和定义了用户在界面上的操作控制 ...

  5. Java中的集合Collections工具类(六)

    操作集合的工具类Collections Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序.查询和修改等操作,还提供了将集 ...

  6. Acwing-286-选课(树上DP)

    链接: https://www.acwing.com/problem/content/288/ 题意: 学校实行学分制. 每门的必修课都有固定的学分,同时还必须获得相应的选修课程学分. 学校开设了 N ...

  7. 小米oj 组长偏头痛(二分)

     组长偏头痛 序号:#28难度:非常难时间限制:1000ms内存限制:10M 描述 临近年底,组长突然患上了偏头痛的毛病,因为他最近从产品经理那里收到了好多需求,需要按排组员尽快完成. 现在用一个数组 ...

  8. 清北学堂-贪心-bfs

    输入样例: 3 5 10 5 4 10 8 1 10 1 3 1 4 1 5 1 3 2 1 2 5 4 3 4 3 4 5 5 1 1 4 4 6 1 9 4 7 2 9 5 10 5 2 8 8 ...

  9. Dockerfile中echo使用

    Dockerfile 中的echo的使用方式和bash中的使用方式是有区别的 下面是一个 Dockerfile 通过echo的方式更换apt-get源和pip源 FROM python:3.5.8-s ...

  10. SyntaxError: (unicode error) 'utf-8' codec can't decode byte 0xce in position 0: invalid continuatio

    点击  文档>>设置文件编码>>Unicode>>Unicode(UTF-8)