自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 java 获取Authorization信息

java 获取Authorization信息

2023-01-18 16:30:22 4417 1

原创 ORA-01653: 表 xxx 无法通过 (在表空间 xxx 中) 扩展

ORA-01653: 表 xxx 无法通过 (在表空间 xxx 中) 扩展

2022-12-26 17:54:06 889

原创 PostgreSQL解决死锁

PostgreSQL解决死锁。pg_cancel_backend,pg_terminate_backend

2022-08-25 17:31:24 2353

原创 PostgreSQL报错:number of bytes should be at-least 8

PostgreSQL报错:number of bytes should be at-least 8

2022-08-17 17:36:37 992

原创 Oracle\MySQL 表元数据查询

Oracle\MySQL 表元数据查询。Oracle 表元数据查询。MySQL 表元数据查询。

2022-08-12 17:54:14 662

原创 PostpreSQL 表元数据查询

PostpreSQL 表元数据查询

2022-08-12 17:50:03 301

原创 MySQL实现Oracle merge into函数

MySQL实现Oracle merge into函数之前有撰文 Oracle、MySQL兼容 – merge into,其中介绍了MySQL用INSERT … ON DUPLICATE KEY UPDATE和存储过程实现merge into,本文介绍其它的两种方法实现merge into。1、replace into​ 语法同insert into,使用简单,但有限制, replace into是根据主键去匹配,故replace into的表必须有主键,常用于单表更新新增。2、update + i

2022-05-11 14:20:41 2078

原创 优先级队列

/** * 自定义比较器 */ public static class MyComparator implements Comparator<Integer>{ // 负:第一个参数在前 // 正:第二个参数在前 // 0:无所谓谁前 @Override public int compare(Integer o1, Integer o2) { if (o1 &g.

2022-04-02 17:27:39 336

原创 常见二分法

package algorithm.system;import java.util.Arrays;public class Half { public static void main(String[] args) { int maxLen = 10; int maxVal = 1000; int time = 1000000; for (int i = 0; i < time; i++) { i

2022-04-02 14:25:47 671

原创 位图及其测试

/** * 位图 */public static class BitMap{ private long[] bits; public BitMap(int max){ bits = new long[(max>>6) +1]; } public void add(int num){ // num % 64 -> num & 63 bits[num>>6] |= 1L<<

2022-03-31 17:38:53 356

原创 位运算实现加减乘除

代码实现 /** * 加法 */ public static int add(int a, int b){ // b=0,sum=a int sum = a; while (b != 0){ sum = a ^ b; // 无进位相加 b = (a & b) << 1; //进位 a = sum; }

2022-03-31 16:35:20 278

原创 1算法基础

二进制package algorithm.basics;/** * 十进制转32位二进制 */public class NumTo32bit { private static void to32bit(int num){ for (int i = 31; i >= 0 ; i--) { System.out.print((num & (1 << i)) == 0 ? "0" : "1"); }

2022-03-31 14:03:41 708

原创 MySQL5.7 与 MySQL8.0的差异

MySQL5.7 与 MySQL8.0的差异MySQL8.0官网字符集支持。 默认字符集已从 更改 latin1为utf8mb4。JSON 增强。从MySQL 5.7.8 开始支持JSON,8.0对此进行增强。**数据类型支持。**MySQL 现在支持在数据类型规范中使用表达式作为默认值。优化器。MySQL 现在支持不可见索引。优化器根本不使用不可见索引,但可以正常维护。默认情况下,索引是可见的。不可见索引可以测试删除索引对查询性能的影响,而无需进行破坏性更改,如果需要索引,则必须撤消该更改

2022-03-23 15:32:40 4950

原创 定位MySQL死锁或锁等待的问题

定位MySQL死锁或锁等待的问题-- 常用查询show processlist; select * from information_schema.processlist; select * from information_schema.innodb_trx;select * from information_schema.innodb_locks;select * from information_schema.innodb_lock_waits;-- information_sche

2021-11-24 16:53:37 360

原创 调整JVM堆大小

调整JVM堆大小第一种方法:  Windows下,在文件/bin/catalina.bat,Unix下,在文件/bin/catalina.sh的前面,增加如下设置:  JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】'  需要把这个两个参数值调大。例如:  JAVA_OPTS='-Xms256m -Xmx512m'  表示初始化内存为256MB,可以使用的最大内存为512MB。  在catalina.bat的@echo off下面添加(就是第二行)

2021-11-24 16:52:22 2870

原创 去除小数点后多余的0

去除小数点后多余的0// 后端// 1.7public static BigDecimal truncDecimal(BigDecimal num){ if (null == num){ return new BigDecimal("0"); } String s = num.toString(); if(s.indexOf(".") > 0){ s = s.replaceAll("0+$", ""); //去掉多余的0

2021-11-24 16:51:15 677

原创 MySQL兼容Oracle to_char中的FM

MySQL兼容Oracle to_char中的FM-- to_char(num,'fm0000')delimiter $$drop function if exists to_char_fm0000$$create function to_char_fm0000(num decimal) returns varchar(5) deterministicbegin declare str varchar(40); set num = truncate(num, 0); set str = c

2021-09-30 17:35:42 1094

原创 Oracle to_char函数中FM的作用

Oracle to_char函数中FM的作用-- 不带FM的格式-- 不带FM的返回数据第一位永远是空格,且不占指定格式的位数-- 0:无非0数字则用0补充,超过指定格式长度则返回#SELECT to_char(0, '00000.000') FROM dual; -- 空格+00000.000SELECT to_char(10, '00000.000') FROM dual; -- 空格+00010.000 SELECT to_char(010.10, '00000.00

2021-09-30 17:33:55 3889

原创 MySQL使用序列

MySQL使用序列1、使用MySQL自带的自增列,但自增列局限较多,比如不能设置步长等。2、使用序列表-- 创建序列表drop table if exists t_sequence;create table t_sequence ( seq_name varchar(50) not null comment '序列名', cur_val decimal(28) not null comment '当前值', inc_val deci

2021-09-30 17:33:08 498

原创 MySQL:Illegal mix of collations (utf8_general_ci,COERCIBLE) and (gbk_chinese_ci,IMPLICIT) for operat

MySQL:Illegal mix of collations (utf8_general_ci,COERCIBLE) and (gbk_chinese_ci,IMPLICIT) for operation ‘=’-- 查看编码show table status;show variables like "%character%";show variables like "%collation%"; -- 设置编码utf8/gbkset character_set_database = utf8

2021-09-30 17:32:21 332

原创 MySQL、hibernate : could not read column value from result set

MySQL、hibernate : could not read column value from result set报此错误,先定位SQL中是否改字段取了别名,如果是取了别名,则查看数据库URL是否有useOldAliasMetadataBehavior参数设置,没有则加上useOldAliasMetadataBehavior=true,问题即可解决。...

2021-09-30 17:31:23 584

原创 Oracle转MySQL delete from ... where exists 兼容解决方案

Oracle转MySQL delete from … where exists 兼容解决方案-- OracleDELETE FROM TEMP_DEP T WHERE EXISTS (SELECT R.NAME FROM TEMP_SCORE R WHERE R.NAME = T.NAME); -- MySQL-- delete语句不能有别名,故无法执行以上语句-- 思路:1、删除别名T,删除后无法达到改造要求,会将TEMP_DEP表的数据全部删除-- 2、不用EXISTS,用子

2021-09-30 17:29:32 1011

原创 Oracle数据库迁移到MySQL数据库

Oracle数据库迁移到MySQL数据库1 字段类型差异OracleMySQL解决方案varchar2varcharvarchardatedate/time/datetime/timestampdatetimeclobtinytext/text/mediumtext/longtextlongtextblobtinyblob/blob/mediumblob/longbloblongblobnumbertinyint/smallint/medi

2021-08-27 17:29:26 588

原创 Oracle、MySQL——表分区

Oracle、MySQL——表分区一、Oracle的分区方式-- Oracle分区规则PARTITION BY { RANGE (column_list) (index_partitioning_clause) | HASH (column_list) { individual_hash_partitions | hash_partitions_by_quantity } } -- 示例CREATE TABLE

2021-08-27 17:22:29 580

原创 Oracle、MySQL兼容 -- merge into

Oracle、MySQL兼容 – merge into1、测试环境及数据​ Oracle 11g、MySQL 5.7CREATE TABLE people_source ( person_id INTEGER NOT NULL PRIMARY KEY, first_name VARCHAR2(20) NOT NULL, last_name VARCHAR2(20) NOT NULL, title VARCHAR2(10) NOT NULL );CREATE

2021-08-27 17:02:15 908 2

原创 Oracle函数一览表

Oracle函数一览表官方文档一、单行函数(Single-Row Functions)1、数值函数数值函数说明示例ABSABS(num) 返回绝对值SELECT ABS(-12) FROM dual; – 12MODMOD(num1, num2) 返回余数 注意:返回值的正负仅由第一个参数决定SELECT MOD(10, 3) FROM DUAL; – 1SELECT MOD(10, -3) FROM DUAL; – 1SELECT MOD(-10, 3

2021-08-27 16:57:34 1273

原创 Oracle函数——NUMTOYMINTERVAL

Oracle函数——NUMTOYMINTERVAL官方文档:https://docs.oracle.com/en/database/oracle/oracle-database/21/sqlrf/NUMTOYMINTERVAL.html#GUID-B98B21AA-44F7-4A9D-A646-6775A1D5F46D-- 格式:NUMTOYMINTERVAL(n, 'interval_unit')-- n:可正负零-- interval_unit取值范围:YEAR、MONTH-- NUMTOYM

2021-08-27 15:57:41 626

原创 MySQL 递归查询

MySQL 递归查询CREATE TABLE T_TEST_AREA( ID INT, PID INT, NAME VARCHAR(20), DELETED INT, CHECKED INT);DELETE FROM T_TEST_AREA WHERE 1=1;INSERT INTO T_TEST_AREA(ID, PID, NAME, DELETED, CHECKED) VALUES(1, -1, '长沙市', 0, 1);INSERT INTO T_TEST_AREA(ID, PI

2021-08-25 10:16:19 1393

原创 MySQL调整时区

MySQL调整时区方法一:修改配置文件-- 修改etc/my.cnf配置文件default-time_zone = '+8:00'方法二:修改全局参数 time_zone-- 查看当前系统时区select @@GLOBAL.time_zone; -- 修改为北京时间set global time_zone = '+8:00'; ...

2021-08-24 17:52:01 108

原创 MySQL实现rownum

MySQL实现rownumCREATE TABLE T_TEST_AREA( ID INT, PID INT, NAME VARCHAR(20), DELETED INT, CHECKED INT);DELETE FROM T_TEST_AREA WHERE 1=1;INSERT INTO T_TEST_AREA(ID, PID, NAME, DELETED, CHECKED) VALUES(1, -1, '长沙市', 0, 1);INSERT INTO T_TEST_AREA(ID,

2021-08-24 17:48:44 6227

原创 MySQL 存储过程 —— procedure

MySQL 存储过程 —— procedure1、简单存储过程-- DELIMITER 边界符,代替';'DELIMITER $$DROP PROCEDURE IF EXISTS procedure_name $$CREATE PROCEDURE procedure_name()BEGIN -- 存储逻辑END $$DELIMITER ;2、变量-- 会话变量,变量名前加@@variable_name-- 普通变量定义,一般在BEGIN END中定义使用DECLARE vari

2021-08-24 16:54:01 954

原创 MySQL 事件event

MySQL 事件event语法CREATE [DEFINER = user] EVENT [IF NOT EXISTS] event_name ON SCHEDULE schedule [ON COMPLETION [NOT] PRESERVE] [ENABLE | DISABLE | DISABLE ON SLAVE] [COMMENT 'string'] DO event_body;schedule: { AT t

2021-08-24 16:47:59 50

原创 Oracle 递归查询 start with... connect by prior...

Oracle 递归查询 start with… connect by prior…-- 语法select column from table start with ...connect by prior ...Oracle 递归查询是以start with 后的条件筛选出主干,然后通过主干结合connect by 条件查找分支,最终形成树状结构。下面通过示例进行说明:-- 构建环境CREATE TABLE T_TEST_AREA( ID INT, PID INT, NAME VARCH

2021-08-02 14:02:33 251

原创 Oracle常用函数

Oracle常用函数官方文档函数说明示例ABSABS(num) 返回绝对值SELECT ABS(-12) FROM dual; – 12MODMOD(num1, num2) 返回余数 注意:返回值的正负仅由第一个参数决定SELECT MOD(10, 3) FROM DUAL; – 1SELECT MOD(10, -3) FROM DUAL; – 1SELECT MOD(-10, 3) FROM DUAL; – -1SELECT MOD(-10, -3) F

2021-08-02 13:55:31 584 2

原创 Typora常用快捷键大全

Typora常用快捷键大全官网:https://support.typora.io/Shortcut-Keys/文件功能热键 (Windows/Linux)热键 (macOS)新文件Ctrl + NCommand + N新窗户Ctrl + Shift + NCommand + Shift + N新标签(不支持)Command + T打开Ctrl + OCommand + O快速打开Ctrl + PCommand + Shift + O

2021-07-05 16:09:49 279

原创 MySQL —— to_char、to_date自定义函数

MySQL —— to_char、to_date自定义函数之前已分析 MySQL与Oracle在日期操作相关的差异本文是用自定义函数实现to_char、to_date,此方法适用快速进行数据库兼容,减少代码的改动。1、to_char除日期外的类型转 字符串,可用convert(expr, char)或cast(expr as char)。其具体用法可参考 MySQL类型转换函数 —— binary、cast()、convert()-- 此自定义函数只能解决 日期转字符串格式-- DELIMI

2021-06-29 16:18:52 14280

原创 MySQL类型转换函数 —— binary、cast()、convert()

MySQL类型转换函数 —— binary、cast()、convert()官方文档:https://dev.mysql.com/doc/refman/5.7/en/cast-functions.html1、字符编码转换CONVERT(expr USING transcoding_name)CONVERT(string, CHAR[(N)] CHARACTER SET charset_name)CAST(string AS CHAR[(N)] CHARACTER SET charset_name)

2021-06-29 16:09:31 3660

原创 Oracle行列转换 -- decode、pivot、unpivot

Oracle行列转换 – decode、pivot、unpivot1、环境搭建(Oracle 11g)CREATE TABLE temp_score(name varchar2(20),subject varchar2(20),score int);INSERT INTO temp_score(name,subject,score) values('张三','语文',82);INSERT INTO temp_score(name,subject,score) values('张三','数学'

2021-06-25 13:17:48 342

原创 Oracle行列转换函数 -- wm_concat、listagg

Oracle行列转换函数 – wm_concat、listagg1、环境搭建(Oracle 11g)CREATE TABLE temp_dep( id INT, depId INT, name varchar(20), age INT, address varchar(100), brithday date);INSERT INTO temp_dep(id, depId, name, age, address, brithday) VALUES (1, 102, '张三', 25,

2021-06-25 13:16:44 1815

原创 MySQL行列转换函数 -- group_concat

MySQL行列转换函数 – group_concat1、环境搭建CREATE TABLE temp_dep( id INT, depId INT, name varchar(20), age INT, address varchar(100), brithday date);INSERT INTO temp_dep(id, depId, name, age, address, brithday) VALUES (1, 102, '张三', 25, '云南昆明', null);INS

2021-06-25 11:02:49 1116

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除