oracle varchar 类型字段查询体会

 今天要做一个查询,很简单的一个查询,数据库是oracle 8.17,以前也做过一些sql server 或者oracle 的查询,感觉和sql server 区别不是很大,很快查询语句就写好了:

string StrSelect = "select T$ITEM,T$CLOT,T$CPFT,T$VALU from ttdltc012111 where T$CLOT='" +TxtCsno.Text.ToString().Trim()+ "'";

语句语法检查能够过去,但是就是查不出来数据,把数据导出来,明明就有.

后来查看数据库设计,CLOT字段是varchar(16)数据类型,我的输入就只有8个字符,考虑估计又是存储数据中含有空格

查了一下oracle 中的字符函数,换了以下查询,用replace 替换空格就可以了

string StrSelect = "select T$ITEM,T$CLOT,T$CPFT,T$VALU from ttdltc012111 where replace(T$CLOT,' ','')='" +TxtCsno.Text.ToString().Trim()+ "'";

OK查询执行成功,查出数据.

后来考虑能够替换空格,估计也能补齐空格,继续测试:用LPAD函数在左边补齐空格到16位

select * from ttdltc012221 where T$CLOT=LPAD('+TxtCsno.Text.ToString().Trim()+ ',16)

测试,正常执行!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值