关于数据库中的char与varchar

    技术2022-05-20  34

        最近在做北京项目时,从数据库中取得了一个字段(是一个逻辑删除的标记为),判断是否为1,结果怎么比较都不相等

     

    最后,一看数据库,发现这个字段是char(2),数据库是oracle数据库。

     

        原因就在这里,char(n)会自动自动补齐位数 ,也就是比较“1 ” 时,才能相等,但是这么写代码看起来很怪

     

    所有我们应该这么写,在sql文取出数据时,就把这个空格取得,使用函数 RTRIM (t.deleteFlag) AS deleteFlag,

     

    这样,在代码中就可以用“1” 比较了。

     

     

     


    最新回复(0)