`

hibernate查询数据表char类型字段只返回一个字符

阅读更多

                                        hibernate查询数据表char类型字段只返回一个字符
在oracle或sqlServer下会遇到,查询数据表字段类型为char,如果使用Hibernate原生SQL去执行查询,往往只会返回

一个字符.原因是char在java中只有两个字节.

解决方法

1.改成

   select cast(列 as varchar2(列大小)) from 表;或者改为 select trim(列) from 表

2.指定列返回的类型.

SQLQuery query = session.createSQLQuery(); 
query.addScalar(columnAlias,Type);
 

 

原文链接:http://blog.csdn.net/FZfeng/archive/2010/09/10/5875964.aspx

分享到:
评论

相关推荐

    Hibernate SQLQuery 查询Oracle char类型结果为一个字符解决方法

    在使用Hibernate框架结合Oracle数据库进行数据查询时,经常会遇到一个问题:当查询的结果集中包含char类型的字段时,Hibernate可能会将其映射为一个单一的字符,而不是整个字符串。这对于数据处理来说显然是不正确的...

    hibernate使用中与各种数据库字段类型对应类型训练

    在Java世界中,Hibernate是一个非常流行的持久化框架,它简化了数据库操作,使得开发者可以更加专注于业务逻辑而不是底层数据访问的细节。本训练主要关注在使用Hibernate时如何处理与各种数据库字段类型的映射,这...

    Java数据类型,Hibernate数据类型,标准sql数据类型之间的对应表

    例如,如果错误地将需要存储大量文本的数据字段映射为一个只适合短字符串的类型(如`VARCHAR(255)`),可能导致数据丢失或存储异常。 同时,了解这些映射还有助于解决可能出现的问题,如数据溢出、类型不匹配导致的...

    Hibernate中数据类型

    在Java编程语言中,我们使用各种数据类型来表示不同类型的数据,如整数、浮点数、字符、布尔值等。然而,在与数据库交互时,这些数据类型需要与数据库中的相应字段类型进行映射。Hibernate,作为一款流行的Java持久...

    Hibernate的char问题.txt

    在给定的文件“Hibernate的char问题.txt”中,虽然描述较为模糊,但我们可以根据提供的 SQL 语句推测出,这里讨论的是在使用 Hibernate 进行数据查询时,如何正确地处理 `char` 类型的数据字段。 #### 三、问题分析...

    hibernate映射Oracle中LONG类型

    Oracle 中的 LONG 类型字段是一种特殊的数据类型,用于存储可变长字符串,最大长度限制是 2GB。这与 Java 中的长整形基本数据类型 long 不同,LONG 类型主要用于不需要作字符串搜索的长串数据。 在 Hibernate 框架...

    Hibernate数据类型映射及ID

    在这里,`name`属性指定了实体类中的ID字段名称,`type`属性指定了ID字段的数据类型,而`column`元素用于指定数据库表中对应的列名以及精度等细节。不同的ID生成策略包括`increment`、`assigned`、`sequence`、`...

    Hibernate类型映射

    7. `character`:映射Java的`String`类型,但长度限制为1个字符,对应的SQL类型是`CHAR(1)`。 8. `string`:映射Java的`String`类型,对应的SQL类型是`VARCHAR`。用于存储可变长度的字符串。 9. `byte`:映射Java...

    Hibernate注释

    1. `@Entity`:此注解是Hibernate的核心注解,用于标记一个Java类为一个实体类,意味着这个类的实例将与数据库中的表进行关联。例如,`@Entity`注解用在`Flight`类上,表示`Flight`类的实例将映射到数据库的一个表。...

    数据库字段名转换成Java字段名

    - 工厂模式:可以创建一个字段名转换工厂,根据输入的数据库字段名,返回对应的Java字段名对象。 - 模板方法模式:定义一个转换模板,子类可以重写具体转换逻辑。 7. **注解驱动**: 在某些情况下,如使用JPA,...

    hibernate配置详解

    Hibernate是一个开源的对象关系映射(ORM)框架,它能够将Java对象映射到数据库表中,并管理这些对象的生命周期。本篇文章将详细解析Hibernate的基本配置方法,包括数据库连接配置、实体类与数据库表的映射配置等,...

    Hibernate注解详解.pdf

    - 对于字符型数据,如`Character[]`、`char[]`和`String`,将被持久化为`Clob`类型。 - 对于字节型数据,如`Byte[]`、`byte[]`和其他可序列化类型,则被持久化为`Blob`类型。 - **`@Column`**:用于定义列的具体...

    HQL常用函数

    1. **CAST(t as type)**:此函数用于将一个值从一种类型转换为另一种类型。例如,`CAST('10' as int)`将把字符串`'10'`转换为整数`10`。 以上介绍了HQL中一些常用的函数及其用法,这些函数可以帮助开发者更高效地...

    Hibernate用UUID作为主键的Demo

    在Java开发中,Hibernate是一个非常流行的ORM(对象关系映射)框架,它允许开发者使用面向对象的方式操作数据库。本教程将深入探讨如何在Hibernate中使用UUID(通用唯一识别码)作为实体类的主键。UUID是一种能确保...

    SSH+mysql开发字符集问题

    - **character_set_results**: 查询结果返回的字符集。 - **character_set_database**: 数据库级别的字符集,默认情况下新建表如果没有指定字符集,则会使用此设置。 **示例代码**: ```sql -- 设置连接级别字符集...

    MYSQL文档资料,基础进阶运维

    - 主键:表中的一个或多个字段,用来唯一标识每一行,确保数据的唯一性。 2. **MySQL进阶知识**: - 索引:索引可以加速数据检索,提高查询性能。常见的索引类型有B-Tree、Hash、Full-text等。 - 视图:视图是...

    Hibernate-add学习

    - **Oracle**: 使用序列获取下一个值。 ```sql derekseq.nextval ``` - **SQL Server**: 无需显式提供字段和值。 **5. 常用字段类型介绍** | 类型 | MySQL 常用 | Oracle 常用 | SQL Server 常用 | JDBC | |---...

    DB2 与ORACLE的比对.pdf

    以下是对这两个数据库系统在数据类型转换、WHERE 条件、REPLACE 关键字、子查询别名、DATE 数据类型、分页处理、DECODE 函数和 NVL 函数等方面的对比: 1. **数据类型转换函数**: - ORACLE 提供 to_char、to_...

    mysql数据库命令

    - 这段代码使用Hibernate框架执行了一个SQL查询,从 `Category` 类型的实体中查询出类型包含 `type` 的所有记录,并返回一个列表。 以上是MySQL数据库的一些基本操作命令及示例,涵盖了数据库管理、表管理和数据...

Global site tag (gtag.js) - Google Analytics