Orecle 迁移 人大金仓数据库 SQL 问题

news/2024/10/8 9:59:51 标签: 数据库

1. start  with ...  connect by 语法不兼容

      使用 oracle 项目一般使用,start with ... connect by 语法做菜单栏数据查询,该语法在人大金仓数据库提供的可视化工具中可以执行,但在Springboot + mybatis 项目中无法执行(版本2.X),通过与人大金仓人员交涉,可以使用 with recursive.... as(... union ..) select ... where... 语法替代,该语法基础是如下:

      假设有如下一张表(menu_table):

idmenu_idparent_menu_idmenu_desc
11一级
21011二级
310101101三级
4101010110101四级

       我们可以使用一下 SQL查询出树状数据:

       with recursive temp as(

             select * from menu_table where id = 3

             union 

             select * from menu_table a  join  temp b on b.parent_menu_id = a.menu_id

         ) select * from temp

        该SQL执行结果如下:

idmenu_idparent_menu_idmenu_desc
11一级
21011二级
310101101三级

           SQL 语法分析: 

           SQL 中的 select * from menu_table where id = 3 查出来的数据,会作为初始基础数据,union 后面的SQL select * from menu_table a  join  temp b on b.parent_menu_id = a.menu_id ,  定义树状数据的规则,当前SQL是向上查询,使用基础数据中 parent_menu_id 值 101 为条件去    menu_table 表中查询 menu_id 值为 101 的数据,会递归处理直到不满足该条件为止            b.parent_menu_id = a.menu_id

          如果我们要向下查找数据要怎么做呢?把条件该为这样 b.menu_id = a.parent_menu_id 

2.数据精度问题  

      oracle 数据库 numeric 类型数据查询出的数据,不会默认在小数点后面补充无效的 0 ,人大金仓数据查询数据会默认在小数点后面做补充 0 操作,如果 java 接受数据使用 String 类型会出现小数点后面很多零问题,可以在数据库配置文件 url 配置信息,添加后缀:initParams=ignore_zero_number=on 忽略补充零

3.druid 连接池胡乱打印SQL报错

     oracle 数据库切换人大金仓数据库,使用 druid 监控 SQL 信息时,会出现 SQL 执行成功功能正常,但是日志文件中出现 SQL 解析报错信息,需要在 druid 配置文件中添加 druid.filter.stat.merge-sql = false 信息


http://www.niftyadmin.cn/n/5693972.html

相关文章

第三课 Vue中的方法的定义及事件绑定指令

Vue中的方法的定义及事件绑定指令 方法定义 方法定义通过Vue对象中的methods属性进行拓展 1)基础示例 new Vue({el: #app,methods: {fun(){alert(1);}}})2)操作对象数据 new Vue({el: #app,data: {val: Hello World !},methods: {fun(){alert(val);}}…

考研笔记之操作系统(四) - 文件管理

文件管理 1. 简介1.1 前情回顾1.2 文件的属性1.3 文件内部数据的组织方式1.4 操作系统向上提供的文件功能1.5 文件应如何放在外存 2. 文件的逻辑结构2.1 无结构文件2.2 有结构文件2.2.1 顺序文件2.2.2 索引文件2.2.3 索引顺序文件2.2.4 多级索引顺序文件 3. 文件目录3.1 基本概…

第四十一章 创建安全对话 - 使用 SecurityContextToken

文章目录 第四十一章 创建安全对话 - 使用 <SecurityContextToken>结束安全对话 第四十一章 创建安全对话 - 使用 在 Web 服务使用 <SecurityContextToken>, 做出响应后&#xff0c;客户端实例和服务实例可以访问相同的对称密钥。有关此密钥的信息包含在两个实例…

数据结构——遍历二叉树

目录 什么是遍历二叉树 根据遍历序列确定二叉树 例题&#xff08;根据先序中序以及后序中序求二叉树&#xff09; 遍历的算法实现 先序遍历 中序遍历 后序遍历 遍历算法的分析 二叉树的层次遍历 二叉树遍历算法的应用 二叉树的建立 复制二叉树 计算二叉树深度 计算二…

正确理解协程

import asyncio# 定义一个异步函数&#xff08;协程&#xff09; async def say_after(delay, what):# 等待指定的时间await asyncio.sleep(delay)# 打印消息print(what)# 定义另一个异步函数 async def main():# 同时启动两个协程&#xff0c;并等待这2个协程结束await say_af…

运用MinIO技术服务器实现文件上传——利用程序上传图片(二 )

在上一篇文章中&#xff0c;我们已经在云服务器中安装并开启了minio服务&#xff0c;本章我们将为大家讲解如何利用程序将文件上传到minio桶中 下面介绍MinIO中的几个核心概念&#xff0c;这些概念在所有的对象存储服务中也都是通用的。 - **对象&#xff08;Object&#xff0…

将自己写好的项目部署在自己的云服务器上

准备工作 这里呢我要下载的终端软件是Xshell 如图&#xff1a; 自己准备好服务器&#xff0c;我这里的是阿里云的服务器&#xff0c; 如图&#xff1a; 这两个准备好之后呢&#xff0c;然后对我们的项目进行打包。 如图&#xff1a; 这里双击打包就行了。 找到自己打成jar包…

白色简洁大方公司企业网站源码 WordPress主题2款

WordPress白色简洁大方公司企业网站主题2款 白色整洁风格wordpress主题是一款比较新颖的国际设计范风格 简洁而大方的 WordPress 主题&#xff0c;适合个人博客、企业和工作室用。 完美支持下拉菜单的wordpress企业主题。 wordpress简白企业模板是一款适合企业站以及工作室…