【问题标题】:Varchar2 and Oracle quick questionVarchar2 和 Oracle 快速问题
【发布时间】:2010-04-26 01:17:02
【问题描述】:

大家好,我使用 varchar2 作为产品名称字段,但是当我从运行 SQL 命令行查询数据库时,它显示了太多的空格,如何在不更改数据类型的情况下解决这个问题

这里是ss的链接

http://img203.imageshack.us/img203/20/varchar.jpg

【问题讨论】:

  • Varchar2(50),也许 50 加 50 个空格?即使他们不使用?

标签: spaces varchar2


【解决方案1】:

插入到数据库中的数据(可能通过一些 ETL 过程)包含未修剪的空格。

您可以使用(伪代码)进行更新

Update Table Set Column = Trim(Column)

【讨论】:

  • 我这样做了,但没有帮助,还是一样
【解决方案2】:

如果TRIM 没有更改结果,则表明实际数据库行中没有尾随空格;它们只是作为格式化屏幕输出的一部分添加。

默认情况下,sqlplus(您似乎正在使用的命令行 Oracle 工具)在显示 select 语句的结果时使用 varchar2 列的最大长度作为(固定)宽度。

如果要更改此设置,请在运行选择之前使用column format sqlplus 命令。例如:

column DEPT_NAME format a20

【讨论】:

    【解决方案3】:

    尝试在两边都使用trim,
    Update TableName set FieldName = RTrim(LTrim(FieldName))

    问候

    【讨论】:

      猜你喜欢
      • 2011-05-07
      • 1970-01-01
      • 2021-03-18
      • 2021-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-09
      相关资源
      最近更新 更多