like concat 兼容h2、mysql、pgsql语法

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: like concat 兼容h2、mysql、pgsql语法

今天解决

https://github.com/apache/incubator-streampark/issues/3451

时候发现从'%${variable.variableCode}%'改为concat ('%', #{variable.variableCode}, '%')

解决的sql注入问题与postgresql不兼容

于是加了一个CAST解决

https://github.com/apache/incubator-streampark/pull/3457

concat('%', CAST(#{variable.variableCode} AS CHAR), '%')

这样就兼容了h2mysqlpgsql

这里测试时候首先本地运行h2跑一下,然后用docker启动一个mysql跑一下:

docker run --name streampark-mysql -e MYSQL_ROOT_PASSWORD=streampark -e MYSQL_DATABASE=streampark -p 3306:3306 -d mysql

运行sql脚本ddl

修改相关配置文件:

spring:
  profiles:
    active: mysql #[h2,pgsql,mysql]

测试通过

然后是postgresql

docker run --name streampark-postgres -e POSTGRES_PASSWORD=streampark -e POSTGRES_DB=streampark -d -p 5432:5432 postgres

运行sql脚本ddl

配置文件修改为pgsql

spring:
  profiles:
    active: pgsql #[h2,pgsql,mysql]

测试通过

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
SQL 自然语言处理 关系型数据库
MySQL的match匹配多个字符串的语法
【8月更文挑战第27天】MySQL的match匹配多个字符串的语法
185 67
|
2月前
|
关系型数据库 MySQL 数据库
在 MySQL 中使用 LIKE
【8月更文挑战第12天】
166 1
|
4月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础第一篇(SQL通用语法与分类)
MySQL数据库基础第一篇(SQL通用语法与分类)
|
4天前
|
关系型数据库 MySQL 数据库
MySQL的语法涵盖了数据定义、数据操作、数据查询和数据控制等多个方面
MySQL的语法涵盖了数据定义、数据操作、数据查询和数据控制等多个方面
18 5
|
4天前
|
关系型数据库 MySQL 数据库
MySQL的语法知识
MySQL的语法知识
11 4
|
5天前
|
SQL 关系型数据库 MySQL
MySQL语法
MySQL语法
14 3
|
4月前
|
存储 关系型数据库 MySQL
MySQL数据库的数据类型、语法和高级查询
MySQL数据库的数据类型、语法和高级查询
59 0
|
14天前
|
关系型数据库 MySQL 数据库
MYSQL索引的分类与创建语法详解
理解并合理应用这些索引类型,能够有效提高MySQL数据库的性能和查询效率。每种索引类型都有其特定的优势,适当地使用它们可以为数据库操作带来显著的性能提升。
37 3
|
23天前
|
SQL 关系型数据库 MySQL
mysql的语法
mysql的语法
26 1
|
1月前
|
搜索推荐 关系型数据库 MySQL
MySQL 模糊查询新纪元:超越 LIKE+% 的高效探索
在数据库的日常操作中,模糊查询是一项不可或缺的功能,它允许我们根据不完全匹配的关键字来检索数据。传统上,MySQL 使用 LIKE 关键字配合 % 通配符来实现这一功能,虽然灵活但性能上往往不尽如人意,尤其是在处理大型数据集时。今天,我们将一起探索几种超越 LIKE+% 的模糊查询技术,以提升查询效率与用户体验。
73 2
下一篇
无影云桌面