优秀是一种习惯!!!
AmethystFOB   >   标签墙   >   数据库 标签

Mybatis使用问题汇总 有更新!

2023-11-29

Mybatis使用问题 一、mybatis获取表数据返回map,用ArrayList<HashMap<String, Object>>接收,数据既有Double类型又有Integer类型,该如何返回相同的类型 在使用 MyBatis 获取表数据返回 Map 时,我们可以通过设置 typeHandler 来指定对应列的数据类型。默认情况下,MyBatis 会将数值型的数据统一解析成 Double 类型,所以需要指定相应的 typeHandler 才能让 MyBatis 返回正确的数据类型。 例如,假设我们的表中有一个字段 age,其中既有 Integer 类型的数据,又有 Double 类型的数据,我们希望在查询时能够返回与数据库中存储的数据类型一致的结果,可以按照以下步骤进行操作: 1.创建自定义的 typeHandler 类,继承 BaseTypeHandler,并指定泛型为 Object。 public class MyNumberTypeHandler extends BaseTypeHandler<Object> { @Override pu....

SQL刷题Day07~Day10 有更新!

2023-11-28

SQL刷题 SQL入门题: Day07~Day08 计算函数 18、1693. 每天的领导和合伙人 题目: 表:dailysales column nametype date_iddate make_namevarchar lead_idint partner_idint 该表没有主键。该表包含日期、产品的名称,以及售给的领导和合伙人的编号。名称只包含小写英文字母。 写一条 SQL 语句,使得对于每一个 date_id 和 make_name,返回不同的 lead_id 以及不同的 partner_id 的数量。 按 任意顺序 返回结果表。查询结果格式如下示例所示。 示例1:输入:DailySales表: date_idmake_namelead_idpartner_id 2020-12-8toyota01 2020-12-8toyota10 2020-12-8toyota12 2020-12-7toyota02 2020-12-7toyota01 2020-12-8honda12 2020-12-8honda21 2020-12-7honda01 2020-12-7honda12 2....

表结构设计之主键的选择(1)——避坑UUID 有更新!

2023-11-28

表结构设计之分布式的主键生成策略的选择(1)——避坑UUID UUID作为主键,再插入数据的时候对于系统的压力是非常大的。如在某个时间点时会出现磁盘的IO异常,导致应用经常出现高延迟。 UUID(全球唯一标识符 Universally Unique Identifier):00000000-0000-0000-0000-000000000000共8+4+4+4+12=32位,业界主要有5中UUID的生成机制: 5种UUID的生成机制 基于时间的UUID 能保证不同设备UUID是唯一的 在同一设备上生成UUID可能重复 利用时间戳 和 设备的具体特性生成唯一编号。 不同设备上因为其环境不同,可以保证UUID是唯一的。 但是在极端环境下:同一设备同一毫秒时间下它生成的UUID就可能会出现重复。因此,如果是超高并发的系统,这种情况还不少。 所以实际开发中不怎么使用基于时间的UUID DCE安全的UUID DCE(身份验证和安全服务) 涉及侵犯用户隐私 有损时间戳导致精度丢失 DCE即使用用户的某些特征(用户名、邮箱等相关的身份标识)来生成,欧美广泛抵制。 所以实际开发中不怎么使用DCE安全的....

MySQL的RegExp 有更新!

2023-11-28

MySQL之正则表达式 一.介绍 正则表达式用来描述或者匹配符合规则的字符串。它的用法和like比较相似,但是它又比like更强大,能够实现一些很特殊的规则匹配;正则表达式需要使用REGEXP命令,匹配上返回"1"匹配不上返回"0",默认不加条件REGEXP相当于like '%%'。在前面加上NOT相当于NOT LIKE。 命令说明 ^在字符的开启处进行匹配 $在字符的末尾处进行匹配 .匹配任何字符(包括回车和新行) [….]匹配括号内的任意单个字符 [m-n]匹配m到n之间的任意单个字符,例如[0-9],[a-z],[A-Z] [^..]不能匹配括号内的任意单个字符 a*匹配0个或多个a,包括空,可以作为占位符使用. a+匹配一个或多个a,不包括空 a?匹配一个或0个a a1| a2匹配a1或a2 a{m}匹配m个a a{m,}匹配m个或者更多个a a{m,n}匹配m到n个a a{,n}匹配0到n个a (….)将模式元素组成单一元素,例如(do)*意思是匹配0个多或多个do 二 使用测试 ^ 在字符串开始处进行匹配 mysql> SELECT 'abc' REGEXP '^a'....