Space is not allowed after parameter prefix ':'

问题:在hibernate中执行mysql语句,如果mysql语句中含有@a := 1 之类的变量,回报这个错误

语句类似于“set @rownum=0, @preval=null; select @rnk:=IF((@rownum := @rownum + 1) and (@preval <=> sal), @rnk, @rownum) AS rnk, @preval:=sal sal FROM emp order by sal;”在mysql(5.X版本)中的sql编辑器中可以运行通过,但是在java程序中却抛出异常:org.hibernate.QueryException: Space is not allowed after parameter prefix ‘:‘ ....

在网上 查找了资料,却发现这是hibernate3.X包之下的一个bug,

(参照http://bugs.mysql.com/bug.php?id=41741)在hibernate4.X中已经修复。

但是项目中不可能使用hibernate4.0,最后不能不使用原生jdbc进行解决...

引用:http://huapengpeng1989412.blog.163.com/blog/static/58828754201291411578566/

Space is not allowed after parameter prefix ':'

时间: 2024-10-31 13:55:12

Space is not allowed after parameter prefix ':'的相关文章

使用HQL语句的按照参数名字查询数据库信息的时候 “=:”和参数之间不能存在空格,否则会报错

问题描述: 今天在使用HQL的按照参数的名字查询数据库信息的时候报错如下: org.hibernate.QueryException: Space is not allowed after parameter prefix ':' [from Users user where user.address=: userAddress] at org.hibernate.engine.query.spi.ParameterParser.parse(ParameterParser.java:95) at

解决Hibernate不支持PostgreSQL中双冒号(::)的Bug

在PostgreSQL中,双冒号(::)的作用是类型转换,而在Hibernate中,SQL中冒号的作用是命名参数,用于SQL中命名参数的匹配,这时,当在PostgreSQL数据库环境中,正常的SQL本身包括双冒号时,通过Hibernate进行查询就会报错,这个应该是Hibernate的一个Bug,怎么解决呢,本文将给出方案. 通过研究Hibernate的源代码,发现了问题所在,问题出在org.hibernate.engine.query.spi.ParameterParser,这个类构造方法为私

缓存:Memcached Redis

一.Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信. 1.Memcached安装配置 #安装倚赖包 yum install libevent-devel #安装软件 yum

Python之路【第十篇】Python操作Memcache、Redis、RabbitMQ、SQLAlchemy、

Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度.Memcached基于一个存储键/值对的hashmap.其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信. 1.Memcached安装配置 #安装倚赖包 yum install libevent-devel #安装软件 yum -y

Windows Error Codes

http://www.briandunning.com/error-codes/?source=Windows Windows Error Codes List All Error Codes | Search Errors: FileMaker Error Codes Lasso Error Codes MySQL Error Codes Windows System Errors About this databaseThis is a free public resource. It is

zabbix 3.2 安装和使用

zabbix3.2安装 1 Getting (获取.得到)Zabbix        #获取zabbix Overview    #概述 [???v?vju:] There are four ways(方法)of getting Zabbix:    #以下四种方式获得zabbix Install it from the distribution [?d?str??bju??n] (分布.分发) packages (包) Download the latest source archive [?

Linux -- sudoers文件

ASUDOERS(5)                                                    BSD File Formats Manual                                                    SUDOERS(5) NAME     sudoers — default sudo security policy plugin DESCRIPTION     The sudoers policy plugin dete

Bundling and Minification(转)

原文地址:https://go.microsoft.com/fwlink/?LinkId=301862 Bundling and minification are two techniques you can use in ASP.NET 4.5 to improve request load time. Bundling and minification improves load time by reducing the number of requests to the server an

Haproxy Configure File

---------------------- HAProxy Configuration Manual ---------------------- version 1.5.11 willy tarreau 2015/02/01 This document covers the configuration language as implemented in the versionspecified above. It does not provide any hint, example or