代码之家  ›  专栏  ›  技术社区  ›  anon

varchar2和oracle快速问题

  •  2
  • anon  · 技术社区  · 14 年前

    嗨,伙计们,我正在使用varchar2作为产品名称字段,但是当我从run sql命令行查询数据库时,它显示了太多的空格,我如何在不更改数据类型的情况下修复它

    这是党卫军的链接

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

    3 回复  |  直到 10 年前
        1
  •  0
  •   David Gelhar    14 年前

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

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

    如果要更改此项,请使用 column format 运行select之前使用sqlplus命令。例如:

    column DEPT_NAME format a20
    
        2
  •  1
  •   Raj Kaimal    14 年前

    插入到数据库中的数据(可能是通过一些etl过程)有未修剪的空格。

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

    Update Table Set Column = Trim(Column)
    
        3
  •  0
  •   user3374033    10 年前

    您好!

    试着两边都要修剪,
    更新tablename set fieldname=rtrim(ltrim(fieldname))

    当做