`

oracle char

 
阅读更多

char就是伪装的varchar2

char 最令人厌恶的地方是他时定长存储的,长度不足会在尾部补空格,直至满足其长度的定义

 

char与varchar2基础

 

比较规则

  1 填补空格的比较规则      限于字符字面量,char和nchar变量  ,user函数的返回值

 2 非填补空格的比较     varchar2 和nvarchar2采用这样的比较规则

这是出现了char令人头疼的根源

 

drop table t;

create table t(name char(10));

insert into t values('test');

select * from t where name='test';

drop table tt;

create table tt(name varchar2(10));

insert into tt values('test');

select * from tt where name='test';

 

select * from t where name in(select name from tt);

 

 

char类型遇到varchar2,总是会转换为varcahr2类型,char类型后面的空格会被保留

 

 

 

转换char类型的

alter table t modify name  varchar2(20);

select * from t;

create table temp_tab as select trim(name) name from t;

drop table t;

rename temp_tab to t;

select * from t;

 

尽量不使用 char

分享到:
评论

相关推荐

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

    ### Hibernate SQLQuery 查询Oracle char类型结果为一个字符的解决方法 在使用Hibernate框架结合Oracle数据库进行数据查询时,经常会遇到一个问题:当查询的结果集中包含char类型的字段时,Hibernate可能会将其映射...

    oracle char,varchar,varchar2的区别和使用方法

    ### Oracle CHAR, VARCHAR, VARCHAR2 的区别与使用方法 在 Oracle 数据库中,字符串类型是极为常见的数据类型之一,主要用于存储文本数据。其中最常用的三种类型包括:`CHAR`, `VARCHAR`, 和 `VARCHAR2`。这三种...

    解决mybatis使用char类型字段查询oracle数据库时结果返回null问题

    "解决mybatis使用char类型字段查询oracle数据库时结果返回null问题" 在使用mybatis框架对Oracle数据库进行查询操作时,如果使用char类型字段作为查询条件,可能会出现结果返回null的问题。这种情况下,需要对char...

    spring-jpa-oracle:演示将 CHAR 列持久化到 Oracle 数据库

    背景如果文本值存储在数据类型为CHAR(n)的 Oracle 列中,则数据库在将该值保存到列之前最多n字符。 后来,尝试使用 Hibernate 或 JPA 等框架搜索具有相同值的列失败,因为搜索词没有填充到n ,导致搜索词与列中存储...

    浅析Oracle中char和varchar2的区别

    本文主要探讨的是两种常见字符串类型:`CHAR`和`VARCHAR2`,它们在使用上有何不同,并且会涉及一些相关的Oracle数据库功能。 首先,`CHAR`是定长字符串类型,这意味着当你声明一个`CHAR(10)`字段时,无论你存储的...

    浅析Oracle中char和varchar2的区别 电脑资料.docx

    Oracle 中 char 和 varchar2 的区别 Oracle 中 char 和 varchar2 是两种常用的字符串数据类型,它们之间的区别是很多开发者经常忽视的。下面我们将详细分析 Oracle 中 char 和 varchar2 的区别。 首先,char 是定...

    Oracle to_char的使用

    Oracle的`TO_CHAR`函数是一个非常重要的转换函数,它用于将数据库中的数值或日期类型数据转换为字符串形式,便于在报告、输出或者处理时按照指定的格式显示。在这个过程中,`TO_CHAR`函数的参数是关键,它们决定了...

    Oracle to_char

    Oracle to_char 函数详解 Oracle 的 to_char 函数是一个功能强大且灵活的格式化函数,能够将各种数据类型(日期/时间、整数、浮点数、数字)转换成格式化的字符串,并且能够从格式化的字符串转换回原始的数据类型。...

    ORACLE_CHAR_ToolS(ORACLE字符转换)

    "ORACLE_CHAR_ToolS"是一个专门针对这类问题的工具集合,它包含了两个注册表文件,用于帮助用户解决Oracle数据库中的字符编码问题。 首先,我们来理解一下字符集的概念。字符集是计算机系统中用于表示文本的一组...

    Oracle中TO_DATE TO_CHAR格式

    Oracle 中 TO_DATE TO_CHAR 格式详解 Oracle 中 TO_DATE 和 TO_CHAR 函数是两个非常重要的日期时间处理函数,主要用于格式化日期和时间数据,以满足不同的应用需求。在本文中,我们将详细介绍 TO_DATE 和 TO_CHAR ...

    Oracle 中的 TO_DATE 和 TO_CHAR 函数

    ### Oracle中的TO_DATE和TO_CHAR函数详解 #### 一、TO_DATE函数 **TO_DATE**函数主要用于将字符串转换成日期格式。在Oracle数据库中,这是一个非常实用的功能,尤其是在处理日期和时间相关的数据时。 ##### 1. ...

    oracle中varchar2(byte)和varchar2(char).doc

    ### Oracle中的VARCHAR2(BYTE)与VARCHAR2(CHAR)区别详解 #### 一、引言 在Oracle数据库中,`VARCHAR2`是最常用的字符数据类型之一,用于存储变长的字符串。然而,在定义`VARCHAR2`类型时,可以选择指定长度为`BYTE`...

    Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理 Oracle 中的 TO_DATE 和 TO_CHAR 函数 日期处理

    Oracle to_char(date)用法总结

    Oracle to_char(date) 用法总结 Oracle 的数据类型转换是指将一种数据类型转换为另一种数据类型,以满足不同的应用场景。在 Oracle 中,数据类型转换可以分为显式数据类型转换和隐式数据类型转换。隐式数据类型转换...

    oracle to_char function

    Oracle的`to_char`函数是一个强大的格式化工具,它允许用户将数据库中的日期、数值、时间等数据类型转换为格式化的字符串。这个函数在PL/SQL编程中非常常见,可以帮助开发人员按照特定的样式和格式展示数据,提高...

    Oracle中TO_DATE、TO_CHAR,Oracle函数大全

    在Oracle数据库中,`TO_DATE` 和 `TO_CHAR` 是两个非常重要的转换函数,它们用于在日期和字符串之间进行转换。这两个函数对于处理日期相关的数据至关重要,尤其在数据分析和报表生成时。 `TO_DATE` 函数是将字符...

    oracle-sql基本语法例子,包括to_date,to_char

    总结的sql语法,其中包括一些函数的用法,to_date,to_char,to_number等等函数

    oracle 数值型函数,字符型函数,日期函数,转换函数,to_char

    Oracle数据库提供了丰富的日期处理函数,如`ADD_MONTHS`, `MONTHS_BETWEEN`, `NEXT_DAY`, `LAST_DAY`, `TRUNC`, `ROUND`, `EXTRACT`, `TO_CHAR`等,用于执行日期加减运算、计算两个日期之间的间隔、提取日期部分、...

    Oracle基础教程

    * 字符类型(Char):用于存储字符串数据。 * 日期时间类型(Date):用于存储日期和时间数据。 * 大对象类型(LOB):用于存储大型数据,例如图片、音频和视频。 Oracle 数据库优化 Oracle 数据库优化是指对 ...

    Oracle 数据类型

    Oracle的数据类型: 1、CHAR数据类型,该类型是固定长度的字符串,如果没指定大小,则默认占用一字节,如果输入的值小于指定的长度,则数据库用空格填充至固定长度,如果用户输入的值大于指定的长度,则数据库...

Global site tag (gtag.js) - Google Analytics