MySQL 切换 Oracle 问题整理
MySQL 通常小写,Oracle 默认大写 ,查询过程中需加双引号,或者直接将MySQL 字段转换成大写
Springboot 配置 oracle连接
spring:
datasource:
url: jdbc:oracle:thin:@1127.0.0.1:1521:chdb
username: root
password: root
driver-class-name: oracle.jdbc.driver.OracleDriver
设置 oracle insert 为 null
mybatis:
configuration:
jdbc-type-for-null: 'null'
行转列。例: 将字符串 1,2,3 转为数组。涉及中文乱码问题,需用 TO_CHAR
SELECT
(
SELECT
listagg ( TO_CHAR( "role_name" ), ',' ) within GROUP ( ORDER BY "id" ) AS "roleName"
FROM
"t_role"
WHERE
"id" IN (
SELECT
REGEXP_SUBSTR( "role_id", '[^,]+', 1, ROWNUM )
FROM
"t_user" CONNECT BY ROWNUM <= LENGTH( "role_id" ) - LENGTH( regexp_replace( "role_id", ',', '' ) ) + 1
)
) "name"
FROM
"t_user"
Oracle 取第一条数据,mysql是 limit 1
SELECT
*
FROM
"t_multi_report"
WHERE
"report_year" = 2022
AND ROWNUM = 1
Oracle mybatis 批量添加
insert into "t_org_related_prod"
("pid", "reg_code", "orignal_org", "orignal_org_name", "product_name", "product_reg_no")
<foreach collection="list" item="item" separator="UNION ALL">
SELECT #{item.pid}, #{item.regCode}, #{item.orignalOrg},
#{item.orignalOrgName}, #{item.productName},#{item.productRegNo}
FROM dual
</foreach>
ORA-00904: "ORIGNAL_ORG": 标识符无效
1、字段如果是小写,需加双引号
2、在mybatis 里 sql 结尾不能加分号 ;
建表添加主键
CREATE TABLE TEST (
ID NUMBER ( 32 ) NOT NULL,
constraint PK primary key ( ID ) -- 主键名称需唯一 ,PK 为主键名称
)
给字段添加注解
COMMENT ON COLUMN TEST.ID IS '主键主键';
ORA-02264: 名称已被一现有约束条件占用
建表添加主键时,主键名称需唯一
Oracle group by 分组排序 取 第一个
根据 report_org_code 分组,pid 排序 ,first_value 函数 取第一个
SELECT DISTINCT first_value("pid") over(partition by "report_org_code" order by "pid" DESC) as "pid" from "t_multi_hi_report"
Oracle group by 分组求和
SELECT DISTINCT "pid" ,SUM("base_capital_balance" ) over(partition by "report_id") "base_capital_balance" from "t_multi_hi_report"
修改 CLOB 类型
需要先删除,在添加,直接修改失败
ORA-00918: 未明确定义列
查询存在重复字段
获取当前时间
MySQL 是 now()
Oracle SELECT SYSDATE FROM dual
Oracle实现 group_concat
SELECT
LISTAGG ( TO_CHAR( RELATED_NAME ), ',' ) WITHIN GROUP ( ORDER BY PID ) AS NAME
FROM
T_MULTI_RELATED_TRANS_TGT
WHERE
TRANS_NUM = 'Q1000120230208145539181261960'
AND IS_DELETED = 'N'
Oracle实现 group by 部分字段
SELECT U.PID,
U.REGCODE,
U.ORG_NAME,
ROW_NUMBER() over (PARTITION BY U.UNISC_CODE ORDER BY U.CREATE_TIME) ROW_NUM
FROM UAC_ORG_MAIN U
MySQL 切换 Oracle 问题整理的更多相关文章
- springboot + mybatis 支持oracle和mysql切换含源码
1.springboot 启动类加入bean 如下 // DatabaseIdProvider元素主要是为了支持不同的数据库@Beanpublic DatabaseIdProvider getData ...
- Oracle与mysql的字段类型整理
Oralce的字段类型整理如下: Mysql的字段类型整理如下: 最后面一栏是对应JAVA的基本类型.希望对初学者有用,初学者在学习JAVA的时候,不知道怎么把JAVA的对象指向到ORALCE或者MY ...
- 【无私分享:ASP.NET CORE 项目实战(第十二章)】添加对SqlServer、MySql、Oracle的支持
目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 增加对多数据库的支持,并不是意味着同时对多种数据库操作,当然,后面,我们会尝试同时对多种数据库操作,这可能需要多个上下文,暂且 ...
- Java学习-006-三种数据库连接 MySQL、Oracle、sqlserver
此文主要讲述在初学 Java 时,常用的三种数据库 MySQL.Oracle.sqlserver 连接的源代码整理.希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激!源 ...
- <转>MySql 与Oracle区别
http://blog.sina.com.cn/s/blog_61e034d50100k6xn.html 近期突击学习了mysql,应杨毅的邀请,简单比较一下mysql和oracle的差别,不当之处欢 ...
- MySQL,Oracle,PostgreSQL 数据库web维护客户端管理工具
TreeDMS数据库管理系统使用JAVA开发,采用稳定通用的springMVC +JDBC架构,实现基于WEB方式对 MySQL,Oracle,PostgreSQL 等数据库进行维护管理操作. 功能包 ...
- MySQL,Oracle,PostgreSQL通过web方式管理维护, 提高开发及运维效率
在开发及项目运维中,对数据库的操作大家目前都是使用客户端工具进行操作,例如MySQL的客户端工具navicat,Oracle的客户端工具 PL/SQL Developer, MSSQL的客户端工具查询 ...
- MySQL,Oracle,PostgreSQL,mongoDB,Hive, SAP HANA 数据库web维护客户端管理工具
TreeDMS数据库管理系统使用JAVA开发,采用稳定通用的springMVC +JDBC架构,实现基于WEB方式对 MySQL,Oracle,PostgreSQL,mongoDB ,Hive, SA ...
- 使用动态跟踪技术SystemTap监控MySQL、Oracle性能
[IT168 技术]本文根据吕海波2018年5月11日在[第九届中国数据库技术大会]上的演讲内容整理而成. 讲师介绍: 吕海波,美创科技研究员,ITPUB管理版版主.出版技术书籍<Oracle内 ...
- (转)Mysql数据库主从心得整理
Mysql数据库主从心得整理 原文:http://blog.sae.sina.com.cn/archives/4666 管理mysql主从有2年多了,管理过200多组mysql主从,几乎涉及到各个版本 ...
随机推荐
- vuex使用和场景案例
vuex是vue提供的一个集中式状态管理器,用于对数据的集中式管理. vuex有四个重要的属性:state.mutations.actions.getters 1.vuex的使用 安装 npm ins ...
- odoo 开发入门教程系列-基本视图
在上一章中已经看到,odoo能够为给定模型生成默认视图.实际上,默认视图对于业务应用程序来说是不可接受的.相反,我们至少应该以逻辑的方式组织各个字段. 视图是在带有操作和菜单的XML文件中定义的.它们 ...
- ABC357
A link 循环加每一个数,加到哪个数不能加了输出前一个数,注意如果加到最后还能加,记得输出\(n\). 点击查看代码 #include<bits/stdc++.h> using nam ...
- Java--匿名类(学习笔记)
匿名类的特点:(1) 匿名类是final类:(3) 在匿名类中可以定义实例变量和若干个实例初始化代码块和新的实例方法.Java虚拟机首先调用父类的构造方法,然后按照实例变量的和实例初始化代码块定义的先 ...
- 【转载】SLAM领域的优秀作者与实验室汇总
原地址: https://blog.csdn.net/m0_37874102/article/details/114365837 总结一些之前看过的SLAM(VO,VIO,建图)文献所发表的实验室和作 ...
- windows11系统NVIDIA显卡驱动自动升级导致2070 Super显卡失效 —— 552.22版本自动升级到560.70版本后2070 Super型号显卡停止工作
操作系统 Windows11,旧版本显卡驱动是552.22,由于安装的是NVIDIA Geforce Experience后显卡驱动自动升级到560.77版本,然后显卡不再工作. 重新安装显卡驱动56 ...
- 在docker 容器开启ssh , 并映射22端口到物理载体机上以使外网访问
1. 运行某镜像以启动容器 docker run -it -p 127.0.0.1:5000:22 c7fe6d9267f8 /bin/bash -p 为指定端口, 127.0.0.1 为映射到的物 ...
- git clone 如何通过proxy进行远程代码仓库拷贝下载
git使用proxy的方式和ssh的情况是差不多的,给出借鉴: SSH如何通过proxy进行服务器连接 ------------------------------------------------ ...
- JUC高并发编程(一)之请求合并案例
1.背景 在做活动或者抢购场景,系统查询的请求并发量非常高 如果并发的访问数据库,会给数据库带来很大的压力, 这时候我们可以考虑将多个查询请求合并成一个查询请求返回给客户端, 比如:根据id查询爆款产 ...
- [NOI2007] 项链工厂 题解
前言 题目链接:洛谷:Hydro & bzoj. 题意简述 yzh 喜欢写 DS 题!你要维护一个环: 顺时针移动 \(k\) 位: 翻转 \(2 \sim n\): 交换 \(i\) 与 \ ...