- 博客(103)
- 资源 (5)
- 收藏
- 关注
原创 SQL学习十九、使用游标
游标(cursor)是一个存储在 DBMS 服务器上的数据库查询, 它不是一条 SELECT 语句,而是被该语句检索出来的结果集。在存储了 游标之后,应用程序可以根据需要滚动或浏览其中的数据。我们通常的检索操作会返回一组称为结果集的行,如那么如何在DBMS中获取游标呢?
2022-10-31 11:34:18
841
原创 SQL学习十八、在SQL中使用条件逻辑
在SQL中使用条件逻辑涉及到的关键字有:case when…then…else…end;以case开头,end结束。when和then相当于“如果…那么”,else相当于如果以上都不成立,那么就…一般用于将数据库内字段值转换为可以看懂的值(说明性质的),例如,数据库中存储的性别为1和2,1代表男,2代表女,如果我们直接返回1和2 的话客户端不一定清楚这个对应规则,这时我们就可以利用这个条件逻辑,把1和2 转换为客户端可以看懂的男和女。
2022-10-31 11:33:34
913
原创 SQL学习十七、事务处理
使用SQLiteDatabase的beginTransaction()方法可以开启一个事务,程序执行到endTransaction() 方法时会检查事务的标志是否为成功,如果为成功则提交事务,否则回滚事务。这 样,如果需要回退,可以回退到某个占位符。使用事务处理(transaction processing),通过确保成批的 SQL 操作要么 完全执行,要么完全不执行,来维护数据库的完整性。如果出现在2、3之间,就会有供应商没有供应商品(在某些业务中是合理的,某些业务中是不合理的)。
2022-10-31 11:32:51
1316
原创 ConstraintLayout 约束布局
当控件B ,View.visible 或者 View.invisible时,设置的数值,看不出任何效果 ,即边距无效;当控件B ,View.visible 或者 View.invisible时,设置的数值 相对于控件B有效;当控件B ,View.Gone时,设置的数值,就相对于控件A有效了。当控件B ,View.Gone时,设置的数值,就相对于控件A有效了。通过上面的解释,应该已经清楚了,‘’B 在 A 的右边“ ,就是。当前控件的 Top ,相对于 parent 的Top进行约束;
2022-10-09 11:11:02
1302
原创 SQL学习十四、创建和操纵表
多数 DBMS都具有交互式创建和管理数据库表的工具,表也可以直接用 SQL语句操纵。这里我主要结合移动端数据库SQLite 来讲解相关的表操作。SQLite 的操作方式可以看做是一种更简单的文件操作方式。
2022-10-06 16:11:08
936
原创 SQL学习六、函数的使用
文章最开始发布在简书,我自己又复制过来了,这篇文章简书的链接SQL支持使用函数,我们可以在SQL语句中使用函数来处理数据,方便数据的转换和处理。比如我们前面接触的去除空格的函数—TRIM()需要注意的是,每一个BDMS都有自己特定的函数,只有少数的函数会被主要的DBMS同时支持,即使是这样,他们的函数名称和使用的语法也可能不同比如,下面几个常用的函数在不同DBMS中的使用提取字符串的组成部分DBMS函数AccessMID()DB2、Oracle、Postgre.
2021-04-16 09:17:15
639
原创 SQL学习五、计算字段
文章最开始发布在简书,我自己又复制过来了,这篇文章简书的链接很多时候,我们需要的数据比如详细地址,订单的总价等在数据库中可能存储在不同字段或不同表中,也可能需要对多个字段的数值进行运算得出。这种时候我们需要直接从数据库中检索出转换、计算或格式化过的数据,而不是检索出数据,然后再在客户端应用程序中重新格式化。虽然在 SQL 语句内可完成的许多转换和格式化工作都可以直接在客户端应用程序内完成。但一般来说,在数据库服务器上完成这些操作比在客户端中完成要快得多。有很多新手程序员或者爱偷懒的程序员喜欢是把.
2021-04-16 09:15:06
5078
原创 SQL学习四、过滤、数据筛选
数据过滤,即按照条件筛选数据,找出符合条件的数据。这可以说是SQL学习和使用时最核心的地方了。1、使用简单WHERE 子句WHERE 子句在表名(FROM 子句)之后给出比如我们需要在 adjunctlist 中查询 flaw_id = 201902的数据的add_timeSELECT add_time FROM adjunctlist WHERE flaw_id = 201902注意:SQL 过滤与应用过滤我们应该在查询的时候就使用SQL对数据做好过滤,而不是交给应用去进行数据过滤,这样做
2021-04-16 09:08:55
20664
原创 SQL学习三、注释
SQL注释的作用对复杂SQL语句添加一些描述性的注释,便于后期维护在SQL文件开始的地方标注程序员的联系方式、和一些说明注释还可以暂时停止要执行的SQL语句,比如我们测试一个长SQL中的某一部分时行内注释注释使用–(两个连字符)嵌在行内,之后的文本就是注释SELECT * --这是一条注释FROM adjunctlist注意:另一种行内注释,在行开始的地方使用# 将一整行作为注释,但是这种形式很少支持,最好不要使用,但是看到了要知道。# 这也是一条注释SELECT *
2021-04-01 20:44:20
638
1
原创 SQL学习二、查询
1、简单 SELECT 语句使用 SELECT 检索表数据,必须至少给出两条信息——想选择什么, 以及从什么地方选择。需要注意的几点多条 SQL语句必须以分号(;)分隔SQL语句不区分大小写,但是列名和值的大小写需要根据实际情况而定许多 SQL开发人员喜欢对 SQL关键 字使用大写,而对列名和表名使用小写,这算是一个不成名的规范。在处理 SQL语句时,其中所有空格都被忽略。所以我们的SQL语句也可以写成这样,方便阅读。SQL语句一般返回原始的、无格式的数据。数据的格式化是表示问题,而不是检
2021-04-01 20:43:49
300
原创 SQL学习一、数据库
SQL注释的作用对复杂SQL语句添加一些描述性的注释,便于后期维护在SQL文件开始的地方标注程序员的联系方式、和一些说明注释还可以暂时停止要执行的SQL语句,比如我们测试一个长SQL中的某一部分时行内注释注释使用–(两个连字符)嵌在行内,之后的文本就是注释SELECT * --这是一条注释FROM adjunctlist注意:另一种行内注释,在行开始的地方使用# 将一整行作为注释,但是这种形式很少支持,最好不要使用,但是看到了要知道。# 这也是一条注释SELECT *
2021-04-01 20:43:06
249
原创 Android基础学习、HashMap
学习一个新的数据结构,我们需要从这个数据结构的使用入手,比如,我们学习 HashMap,我们就看看 HashMap 是怎么使用的,我们使用 HashMap 最多的方法就是 put 方法。备注:我们用 Android9.0(API 28) 的源码进行分析HashMap 的插入流程我们使用 HashMap 的一般代码Map<String, String> hashMap = new HashMap<>();hashMap.put(key, value);构造函数分析我们
2021-03-31 19:29:14
1435
原创 进程间通信,数据流传递(AIDL、Socket)
进程间通信Android 四大组件Android 进程间通信可以通过Android 四大组件实现。Activity**使用 Intent **Intent callIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:12345678" ); startActivity(callIntent);Content ProviderContent Provider可以跨进程访问其他应用程序中的数据(以Cursor对象形式返回),当然,也
2020-05-18 14:10:26
2385
原创 Gradle 依赖库下载
Gradle 依赖库下载在我们使用Gradle下载相关依赖库的时候,经常会出现下载过慢或者下载不了的情况。相关原因及尝试解决办法如下:无法找到目标路径//原因:无法找到到请求目标的有效认证路径Cause: unable to find valid certification path to requested target可能是AS开启了离线模式,关闭离线模式后重新尝试或许可以解决。...
2020-04-07 10:28:22
2660
原创 SQLite学习八、TEXT类型读取超过2M的字符串
TEXT类型读取超过2M的字符串的时候报错Couldn't read row 0, col 0 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it.关于SQLite 不同类型存储数据大小的限制1、CHAR。CHAR存储定长数据很方便,CHAR字段上...
2019-07-23 14:53:30
8788
原创 SQLite学习七、更新DB数据库中BLOB字段值
在代码中直接用update 语句执行会报错,需要使用 ContentValues 传入参数,进行更新 private void saveFile2LocalDB(String url) { SQLiteDatabase wyhcjgDb = WyhcJgDBManager.getInstance().getDbHelper().getWritableDatabase(En...
2019-07-23 14:52:48
2034
原创 SQLite 数据库打开异常时删除DB文件
SQLite 在打开DB文件时,如果遇到打不开的情况,会删除DB 文件,有点凶残。我们来查看源码1、android.database.sqlite.SQLiteDatabaseprivate SQLiteDatabase(String path, int openFlags, CursorFactory cursorFactory, DatabaseErrorHandler erro...
2019-07-23 14:52:08
1694
1
原创 汉诺塔问题的思考
有三根杆(编号A、B、C),在A杆自下而上、由大到小按顺序放置64个金盘。目标:把A杆上的金盘全部移到C杆上,并仍保持原有顺序叠好。操作规则:每次只能移动一个盘子,并且在移动过程中三根杆上都始终保持大盘在下,小盘在上,操作过程中盘子可以置于A、B、C任一杆上。1、物理世界中的解答2、抽象为数学的问题对于复杂的问题,我们需要简化的去想,比如上面物理模型,我们是先从2个盘开始的思考的...
2019-06-18 10:30:59
813
原创 Sqlite 数据库损坏的恢复
SQlite database disk image is malformed数据表的损坏,一般原因:数据表在读写的时候,设备突然断电、关机、软件闪退等情况下会造成数据库或表的损坏。Sqlite3 导出损坏包中的数据客户的一张表中的数据丢失了,无法查看,一共35条附件数据1、安装 Sqlite3安装步骤,菜鸟教程安装成功2、使用Sqlite 命令导出数据为sql文件...
2019-04-21 11:15:34
6469
2
转载 一套键鼠操控多台电脑--Mouse Without Borders 设置教程(转载)
这篇文字是转载的,地址一套键鼠操控多台电脑–Mouse Without Borders 设置教程一套键鼠控多机+文件秒传微软神器《Mouse Without Borders》实战你或许遇到过类似的问题:●咱同时用好几台电脑,有的看资讯,有的炒股,有的玩游戏,多任务并行!虽然很酷,但也觉得切换来切换去的有些麻烦。●给爸妈买了电脑,但是不太懂电脑的他们总有很多问题需要我解决,连在电脑里...
2019-02-21 11:21:48
7030
原创 SQLite学习六、通过Replace实现插入替换
我们在插入数据的时候经常遇到这样的 情况,如果这条数据在数据库中有就更新、没有就插入。比如,我们现在有这样一张表(type_id 是唯一标识列):先插入一条重复插入时失败重复时替换的处理其中,type_id 是唯一标识列,当出现 type_id 重复的数据时,我们替换掉表中的数据,SQL 的写法:Replace into worktype(type_id ,type...
2019-01-03 17:20:09
1912
原创 Android Studio生成Jar包
app 模块(application应用)生成 jar 包build 文件1、apply plugin: 'com.android.application'----> apply plugin: 'com.android.library'2、去掉applicationId "com.kingoit.yzt"3、创建打包方法task makeJar(type: Copy)mak...
2018-11-30 15:45:31
2678
原创 java中计算平面图形夹角
在代码中我们知道了ABC,DEF等六个点的坐标,现在需要求出∠A 和 ∠D 的度数。怎么计算?(这个其实是一道数学题,只是需要我们用代码写出来,先来回顾一下之前的三角函数和反三角函数)1、三角函数锐角三角函数进行角度计算的时候,我们先来回顾一下三角函数,当我们需要计算某个角的三角函数时,我们可以通过构造直角三角形,即把这个角放到某个直角三角形中,然后利用这个直角三角形的三条边长进行...
2018-11-30 15:43:56
3983
1
原创 Room框架学习、使用
Room Persistence Library(官方介绍)官方ORM(Object Relational Mapping)框架专题Google官方推出的Android架构组件系列文章(六)Room持久化库Room 的官方API 可以查看这里##介绍Room是谷歌官方的数据库ORM(对象关系映射)框架,使用起来非常方便。Room提供了一个SQLite之上的抽象层,使得在充分利用SQ...
2018-10-25 10:37:04
5417
3
原创 SQL学习十、联结表
SQL最强大的功能之一就是能在数据查询的执行中联结(join)表。相关概念1、关系表理解关系表,最好可以通过一个例子。比如我们有这样一张水果订单表oderlist,表中每一行是一个水果订单,里面包含(主键id、水果名、数量、单价、订单号、用户id、用户名称、订单时间、水果供应商、供应商地址、供应商电话、供应商邮箱、供应商联系人)。通过表中的数据我们可以看出同一个供应商供应了多个订单,这...
2018-10-25 08:51:45
521
原创 SQL学习十五、视图
视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索 数据的查询。可以把视图看作一个已经写好的SQL,使用的时候直接调用对应的视图以获取对应的数据。备注:1、MySQL从版本 5起开始支持视图,因此,视图不能在较早版本的 MySQL中使用。2、SQLite仅支持只读视图,所以视图可以创建,可以读,但其内容不能更改。为什么使用视图1、重用 SQL语句,视图可以给多人使用,而不...
2018-10-25 08:51:29
400
原创 利用WindowManager 创建最上层的view,可控制是否可以点击外部
/** * 用于分割指定继承时图斑选择 * * @author zuo * @date 2018/9/5 10:56 */public class SplitDataChooseDialog { private Context mContext; private View mView; private ISplitDataChooseListener mData...
2018-09-30 17:43:08
4212
原创 Android 单元测试
测试代码中的方法没有被Mock在写本地单测的时候,会遇到android.jar某个方法没有被Mock的情况,此时可以通过如下配置:android { // ... testOptions { unitTests.returnDefaultValues = true }}自动创建测试类在目标类的空白区域,右键-- Go To – Test,Create New ...
2018-09-18 23:22:08
342
原创 自定义控件 - 流式布局(FlowLayout)
效果图item 布局文件kingoit_flow_layout<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://sche...
2018-08-15 10:11:55
982
原创 Gradle 实现 Android 多渠道定制化打包
我们可以利用Gradle 实现Android的 多渠道定制化打包ProductFlavors同时生成多渠道多版本的操作主要是靠productFlavors 来实现的,branchA、branchB 是自定义的渠道名,这里定义的类型会在最终打包的时候出现,选择其中自己需要版本进行最终的打包即可(可多选)。android{ productFlavors{ ...
2018-08-09 09:19:54
1978
原创 自定义控件 - 封装公用HeadView
设计样式这个控件的用途是替换项目中使用的界面的头部布局,减少重复代码的书写,提高效率。 为了通用,我们设计的样式如下,分别为: 左侧ImageView、左侧TextView、标题TextView、标题容器FrameLayout、右侧TextView、右侧ImageView实现布局文件 kingoit_head_view.xml&lt;?xml version...
2018-07-23 18:29:26
503
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人