Android studio 连接SQLite数据库 +创建数据库+创建数据库表_android studio 数据库_CV工程师HYJones的博客-程序员秘密

技术标签: java  sqlite  数据库开发  android studio  intellij-idea  intellij idea  

Android studio 之数据库的使用 连接创建SQLite

大家好,欢迎来到寒依。
相信看啦我的教程 当老师问你在学习Android studio 数据库使用过程中遇到什么困难,分享一下你的感悟和解决方法 的时候,你可以直接大胆的说出来: “老师我没有遇到问题,看啦寒依的教程 畅行无阻”

我使用的工具是 Intillij idea 专业版 但是方法都一样 因为 Intellij idea 是Android studio 的祖宗 方法都是一样

Intellij idea专业版 yyds

相信你能看到这篇文章 肯定是在学习Android studio 连接数据库时遇到啦问题。哪恭喜你,你今生都很幸运,不然也不可能你遇到我,哪下面呢就让我给下面带来最精彩都得教程。相信你也会觉得非常的简单。
如果你是大佬就单纯想来看看我,那就当我没说,还请大佬来指点指点,必将感激不敬。
不废话啦, 傻瓜式教程马上开始。小板凳坐好啦,下面才是学习Android 开发正确的打开方式。

SQLite 为Android studio 自带 无需下载

Android studio 接数据库(SQLite),创建数据库

第一步 新建一个新的Android 项目 不会看图
在这里插入图片描述
新建Android 选择一个空的(Empty Activity)项目 接着点击 下一步
在这里插入图片描述
Name 自己取就ok 语言Language 选择 java 点击完成
在这里插入图片描述

接下来才是最精彩的时刻 竖起小耳朵 张大眼睛盯好啦 (新建一个类 )
在这里插入图片描述
DbContect.java

package com.example.dbproject;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.widget.Toast;
public class DbContect extends SQLiteOpenHelper {
    
    private static final int VERSION=1;
    private static final String DBNAME="Users.db";   //  创建数据库名叫 Users
    private Context mContext;

    public DbContect(Context context){
    
        super(context,DBNAME,null,VERSION);
        mContext = context;
    }
    //创建数据库
    public void onCreate(SQLiteDatabase db){
    
        //创建密码表  pwd_tb
        db.execSQL("create table pwd_tb (pwd varchar(20) primary key)");
        //创建收入表    user_tb
        db.execSQL("create table user_tb(_id integer primary key autoincrement, money decimal," +
                " time varchar(10),type varchar(10),handler varchar(100),mark varchar(200))");
    }
    //数据库版本更新
    public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion)
    {
    
        db.execSQL("drop table if exists pwd_tb");
        db.execSQL("drop table if exists user_tb");
        onCreate(db);
    }


}

再来到 activate_main.xml
在这里插入图片描述
activaty_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">
    <LinearLayout android:layout_width="match_parent"
                  android:layout_height="match_parent">
        <Button
                android:id="@+id/create"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="#00BCD4"
                android:textSize="22dp"
                android:text="点击创建Users数据库"
        >
        </Button>
    </LinearLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

再打开 MainActivaty .java

MainActivaty .java

package com.example.dbproject;

import android.database.sqlite.SQLiteDatabase;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {
    
    DbContect helper;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

            helper=new DbContect(  MainActivity.this);
            Button btn=findViewById(R.id.create);
            btn.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View V) {
    
                    SQLiteDatabase db=helper.getWritableDatabase();
                }
            });
        }
    }

好啦 代码完事 刚才是最精彩的时刻 现在到啦激动人心的时候
测试一下是否成功 和数据可视化 精彩即将呈现
运行项目
在这里插入图片描述
点开模拟器 小手机
在这里插入图片描述
别急 还没完事 结果还没出呢 再来到
在这里插入图片描述
此时在右下角会跳出一个东西

在这里插入图片描述

到第二个data 下面找到
直接看图吧 不想打字啦

在这里插入图片描述 Users.db 就是我们创建的数据库
接下来可视化
方法一 :
在这里插入图片描述
在这里插入图片描述

嘿嘿 出来啦 激动不激动

在这里插入图片描述

可视化方式二:
将数据库保持下来 用其他的可视化工具打开 直接将 保存的 Users.db 托到 Navicat
在这里插入图片描述
直接托进去 就ok
在这里插入图片描述

好啦 老师再敢问你学习Android studio数据库的使用中有没有什么困难的时候就可以很有底气的跟她说 “老师我没有遇到问题 ,学习中畅行无阻”

教程完毕 欢迎 投稿提问
也欢迎大佬指导
谢谢大家 !

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/hjjshua/article/details/124150812

智能推荐

ArcGIS中GPS坐标定义坐标与投影 -------从地理原始数据到数据显示..._weixin_30919571的博客-程序员秘密

1. 导出GPS坐标 不同型号的GPS接收机导出的数据格式不同:国产与国外不同、静态与差分不同、基站与流动不同;RINEX格式是一个国际上通用的数据交互格式,通常接收机可以导出这种格式,所以不必烦恼。(可参考(要看博客?老师说博客内容不严谨,那你可以找本书啊!!!书是经过严谨论证的,博客可能有感而发,错字是不是就是见怪不怪?书读的少,怪我喽?):https://blog.csdn...

gazebo moveit ros_control设置初探_dbdxnuliba的博客-程序员秘密

1配置文件调用顺序**_moveit_planning_execution.launch-&gt;move_group.launch→ **_moveit_controller_manager.launch.xml (填写控制器)-&gt;controllers.yaml2.新建controllers.yaml3.编写一个启动文件 https://blog....

C++模版深度解析_baizi1456的博客-程序员秘密

在C++发明阶段,C++之父Stroustrup和贝尔实验室的C++小组对原先的宏方法进行了修订,对其进行了简化并将它从预处理范围移入了编译器。这种新的代码替换装置被称为模板,而且它变现了完全不同的代码重用方法:模板对源代码重用,而不是通过继承和组合重用对象代码。当用户使用模板时,参数由编译器来替换,这非常像原来的宏方法,却更清晰,更容易使用。模板使类和函数可在编译时定义所需处理和返...

【spring 记录】 java.lang.ClassNotFoundException: ContextLoaderListener_路途…的博客-程序员秘密

部署Maven项目到tomcat报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener1. 报错信息严重: Error configuring application listener of class org.springframework.web.contex...

Docker面试题大全整理_大数据狂人的博客-程序员秘密

第一部分1、如何在生产中监控Docker?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Docker提供docker status和docker事件等工具来监控生产中的Docker。我们可以使用这些命令获取重要统计数据的报告。Docker统计数据: 当我们使用容器ID调用docker stats时,我们获得容器的CPU、内存使用情况等。它类似于Linux中top命令。Docker事件: Docker事件是一个命令,用于查看Docker守护进程中整改

“TypeError: 'int' object is not callable” 和OperationalError: (1054, "Unknown column )_int object is not callable_Pikachu_simple的博客-程序员秘密

一、“TypeError: 'int' object is not callable”这个错误的意思是int对象不可调用。出现这个错误,很有可能就是因为函数名和变量名重复,解决方法:要么改函数名,要么改变量名我的错误就比较奇怪了,可能是我的列名和之前定义的变量重复吧(。。感觉不太可能因为这个错误啊。。)然后,我就把变量名字改了一下。改为:最后别忘了重新makegr...

随便推点

美术基础知识_南三方的博客-程序员秘密

               中国画(亦称国画)是我国特有的画种,由于民族性格、历史文化传统、审美以及绘画材料和工具的不同,经过无数画家的努力形成的、带有民族特色的画种,是世界艺术中的重要组成部分。                         1中国画是我国传统造型艺术之一,简称中国画。                         2中国画的工具有哪些笔、墨、纸、砚。           

详解MySQL中CONCAT()函数的用法(链接字符串)_mysql like concat('%',1,'%')_初默的博客-程序员秘密

MySQL中CONCAT()、CONCAT_WS()和GROUP_CONCAT()函数的区别和使用一、MySQL中CONCAT函数1.功能将多个字符串连接成一个字符串2.语法CONCAT(str1,str2,…) 3.使用方法返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。 mysql&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; SELECT CONCAT('张三','李四...

android动态壁纸文件,DIY Android手机动态壁纸APK安装文件_TDIG测评室的博客-程序员秘密

DIY非交互式动态壁纸APK安装文件首先,让我们首先了解1.由几个图像帧组成. 当以一定顺序和速度连续播放几帧时,就会形成. 影响. 这也是的原理. 最熟悉的图片是GIF格式的图像. 2.简单来说,墙纸部分的组成是通过APK程序进行的GIF循环. 3.已安装的APK可以直接在动态壁纸中找到,并设置为动态桌面,以实现最简单的播放效果. 4.所谓的非交互性是指通过以下教程制作的动态壁纸无法通过在...

蓝桥杯 ALGO-12 幂方分解_g28_gerwulf的博客-程序员秘密

算法训练 幂方分解 时间限制:1.0s 内存限制:256.0MB问题描述  任何一个正整数都可以用2的幂次方表示。例如:  137=27+23+20  同时约定方次用括号来表示,即ab可表示为a(b)。  由此可知,137可表示为:  2(7)+2(3)+2(0)  进一步:7= 22+2+20(21用2表示)  3=2+20  所以最后13...

windows使用openssl生成根证书及SSL证书签发_sslcre_xieet_0的博客-程序员秘密

windows使用openssl生成根证书及SSL证书签发网上找了很多生成命令,大都中间会出问题,我是在win10进行证书生成,踩过的坑进行记录。1 OpenSSL下载最新的版本:https://github.com/openssl/openssl/archive/OpenSSL_1_1_1b.zip2 windows下安装及配置安装过程不写了。(1)配置主要是环境变量path,将op...

linux内核中socket的创建过程源码分析(详细分析)_kmemcheck_bitfield_bule_sky_fuxing的博客-程序员秘密

原文  http://www.cnblogs.com/hyd-desert-camel/p/3536341.html1 三个相关数据结构 .关于 socket 的创建,首先需要分析 socket 这个结构体,这是整个的核心。104 struct socket {105         socket_state            state;106 

推荐文章

热门文章

相关标签