当前位置:   article > 正文

Android之SQLite数据库及SQLiteStudio工具的使用,全网最新_androidstudio的sqlite创建工具类

androidstudio的sqlite创建工具类

主页面

点击创建数据库,Log打印日志

创建数据库

点击插入数据(SQLiteStudio中显示数据)

学生表

点击删除数据:(SQLiteStudio显示数据和Android中Log打印日志)

删除数据

更新数据:(SQLiteStudio显示数据和AndroidStudio中Log打印日志)

更新数据

查询数据:(AndroidStudio中Log打印数据)

查询数据

(六)代码

===============================================================

MainActivity.java

public class MainActivity extends Activity {

private DatabaseHelper databaseHelper; //用于创建帮助器对象

private SQLiteDatabase db; //用于创建数据库对象

private static final String name = “mydatabase.db”; //数据库名称

private static final int version = 1; //数据库版本

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

SQLiteStudioService.instance().start(this);

}

//创建数据库

public void createDatabase(View view) {

databaseHelper = new DatabaseHelper(this, name, null, version);

db = databaseHelper.getWritableDatabase();

}

//向数据库中添加数据

public void Insert(View view) {

//向学生表中添加数据

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230001, “张三”, 17, 75});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230002, “李四”, 20, 79});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230003, “Mark”, 18, 99});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230004, “Mary”, 22, 89});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230005, “王五”, 16, 83});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230006, “Jack”, 19, 91});

db.execSQL(“insert into student(id, name, age, grade) values(?, ?, ?, ?)”, new Object[]{1230007, “李华”, 21, 85});

Log.d(“MainActivity”, “信息插入成功!”);

}

//删除数据库中的数据

public void Delete(View view) {

//删除李华信息

db.execSQL(“delete from student where name = ?”, new Object[]{“Jack”});

Log.d(“MainActivity”, “Jack信息被删除!”);

}

//修改数据库中的数据

public void Update(View view) {

//将张三的学号改为1111111

db.execSQL(“update student set id = 1111111 where name=‘张三’”);

Log.d(“MainActivity”, “张三数据信息更新成功!”);

}

//查询数据库中的数据

public void Select(View view) {

//查询数据库中学生的信息

Cursor cursor = db.rawQuery(“select * from student”, null);

while (cursor.moveToNext()) {

//用cursor.getColumnIndex获得列

Integer id = cursor.getInt(cursor.getColumnIndex(“id”));

String name = cursor.getString(cursor.getColumnIndex(“name”));

Integer age = cursor.getInt(cursor.getColumnIndex(“age”));

float grade = cursor.getFloat(cursor.getColumnIndex(“grade”));

Log.d(“MainActivity”, “[学号:” + id + “, 名字:” + name + “, 年龄:” + age + “, 成绩:” + grade + ‘]’);

}

}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android=“http://schemas.android.com/apk/res/android”

xmlns:tools=“http://schemas.android.com/tools”

android:layout_width=“match_parent”

android:layout_height=“match_parent”

tools:context=“.MainActivity”

android:orientation=“vertical”>

<Button

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:onClick=“createDatabase”

android:text=“创建数据库”

android:textSize=“25dp” />

<Button

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“插入数据”

android:textSize=“25dp”

android:onClick=“Insert”/>

<Button

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“删除数据”

android:textSize=“25dp”

android:onClick=“Delete”/>

<Button

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:text=“更新数据”

android:textSize=“25dp”

android:onClick=“Update”/>

<Button

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:onClick=“Select”

android:text=“查询数据”

android:textSize=“25dp” />

DatabaseHelper.java

//创建一个抽象类SQLiteOpenHelper的实现类DatabaseHelper

public class DatabaseHelper extends SQLiteOpenHelper {

/**

  • MyOpenHelper构造方法

  • @param context 上下文

  • @param name 数据库文件的名字

  • @param factory 游标工厂(结果集)

  • @param version 数据库的版本号(用于升级)

*/

public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {

super(context, name, factory, version);

}

//创建数据库时,调用此方法

@Override

public void onCreate(SQLiteDatabase db) {

Log.d(“MainActivity”, “数据库创建成功”);

//创建一个学生表

db.execSQL(“create table student(id integer, name char(10), age integer, grade float)”);

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

文末

好了,今天的分享就到这里,如果你对在面试中遇到的问题,或者刚毕业及工作几年迷茫不知道该如何准备面试并突破现状提升自己,对于自己的未来还不够了解不知道给如何规划,可以来看看同行们都是如何突破现状,怎么学习的,来吸收他们的面试以及工作经验完善自己的之后的面试计划及职业规划。

这里放上一部分我工作以来以及参与过的大大小小的面试收集总结出来的一套进阶学习的视频及面试专题资料包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家

外链图片转存中…(img-IUy313xc-1711628512834)]

文末

好了,今天的分享就到这里,如果你对在面试中遇到的问题,或者刚毕业及工作几年迷茫不知道该如何准备面试并突破现状提升自己,对于自己的未来还不够了解不知道给如何规划,可以来看看同行们都是如何突破现状,怎么学习的,来吸收他们的面试以及工作经验完善自己的之后的面试计划及职业规划。

这里放上一部分我工作以来以及参与过的大大小小的面试收集总结出来的一套进阶学习的视频及面试专题资料包,主要还是希望大家在如今大环境不好的情况下面试能够顺利一点,希望可以帮助到大家

[外链图片转存中…(img-TsXhFE3b-1711628512834)]

本文已被CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》收录

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/518052
推荐阅读
相关标签
  

闽ICP备14008679号