如何在perl中停止自动字符串转换为数字?

时间:2012-07-18 11:29:32

标签: perl

好吧,当我在备份中命名一个带有“4.0”的文件夹并将该名称存储在数据库中时。当我使用perl从数据库中获取它时,我改为“4”。如何停止自动转换?

2 个答案:

答案 0 :(得分:3)

这里有几件事可能出错。

  • 在将变量插入数据库之前,您在变量中的值可能已更改
  • 数据库驱动程序可能认为它是一个数字,可能会更改它
  • 数据库服务器可能会在存储之前对其进行更改
  • 而且,出路可能会发生同样的事情。

检查每一件事情,看看价值的变化。然后,专注于该部分并添加到您的问题。

答案 1 :(得分:1)

据我所知,你不能。您正在使用的DBD驱动程序(您未指定)可能是用XS编写的,并且正在使用自己的启发式算法来解决这个问题。最有可能的是,您最终必须在绑定时指定类型(例如,SQL_CHAR)以影响其启发式。

请记住:发布代码和详细信息,以便人们可以提供帮助。