oracle 取字段长度为5,oracle9i中varchar2(5)字段长度不足5前面补0?

oracle9i中varchar2(5)字段长度不足5前面补0?

mip版  关注:201  答案:2  悬赏:20

解决时间 2021-01-19 11:34

546eab9a73284d530d458ba00011bab0.png

已解决

2021-01-18 23:56

具体情况是这样的 本来这个流水号这个字段中应该存储的值为:00001、00002、。。。。09999这样的数据,而且不应该有重复,但是现在出现了两个00005,那么就需要第二个00005改成0006,后面的数据大小应该都加1;

我是先将这个varchar2字段先to_number()的,然后将00006及其后面的值加1,然后将00005改成00006,这样number类型的数据是理顺了,现在需要这正确的number值转换为00001形式了,我知道access数据库中有这样的方法:update table set lsh(流水号)=right(100000+lsh,5),但是oracle中没有这个方法!!

请教各位大侠oracle中应该怎么处理最后一步的这个转换呢???

最佳答案

e1068e55c3bc0589e65ff1cc0779e86e.png

2021-01-19 00:26

用lpad(字符串,位数,要补的字符)

lpad('1', 5, '0')='00001'

全部回答

54d2d0ca7c5430815df606ff72cbfb21.png

1楼

2021-01-19 01:28

在每一个运行的oracle8i数据库中都有一个数据库名(db_name),如果一个服务器程序中创建了两个数据库,则有两个数据库名。其控制参数据分属在不同的pfile中控制着相关的数据库。 二、什么是数据库实例名(instance_name) 数据库实例名则用于和操作系统之间的联系,用于对外部连接时使用。在操作系统中要取得与数据库之间的交互,必须使用数据库实例名。例如,要和某一个数据库server连接,就必须知道其数据库实例名,只知道数据库名是没有用的,与数据库名不同,在数据安装或创建数据库之后,实例名可以被修改。数据库安装完成后,该实例名被写入数据库参数文件pfile中,格式如下: [code:1:1aaf156970] db_name="orcl" #(不允许修改) db_domain=dbcenter.toys.com instance_name=orcl #(可以修改,可以与db_name相同也可不同) service_names=orcl.dbcenter.toys.com control_file=(............... ......... [/code:1:1aaf156970] 数据库名与实例名之间的关系。 数据库名与实例名之间的关系一般是一一对应关系,有一个数据库名就有一个实例名,如果在一个服务器中创建两个数据库,则有两个数据库名,两个数据库实例名,用两个标识确定一个数据库,用户和实例相连接。 但在8i、9i的并行服务器结构中,数据库与实例之间不存在一一对应关系,而是一对多关系,(一个数据库对应多个实例,同一时间内用户只一个实例相联系,当某一实例出现故障,其它实例自动服务,以保证数据库安全运行。) 三、操作系统环境变量(oracle_sid) 在实际中,对于数据库实例名的描述有时使用实例名(instance_name)参数,有时使用oracle_sid参数。这两个都是数据库实例名,它们有什么区别呢?(经常弄混) [code:1:1aaf156970] (oracle_sid) os oracle 数据库

我要举报

如果感觉以上信息为低俗/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!

点此我要举报以上信息!

推荐资讯

大家都在看

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值