获取结果的简单查询 100
从类型为的列 VARCHAR
返回字符串。这是预期的行为。我使用的是一个遗留系统,我知道我需要将这些值转换为php integer
键入以便按程序排序或执行算术等。
数据库是否显式返回 VARCHAR
如果是这样的话,那么对于弱类型语言,这是如何工作的呢?
或者,dbal是否查看列类型并在此基础上执行隐式转换?
换言之:sql中的列类型仅仅是由dbal解释的“tag”或“label”,然后dbal根据语言进行适当的强制转换吗?
为使问题具体化,我想回答以下问题: Propel
, php
以及 MySQL
.
2条答案
按热度按时间whhtz7ly1#
如果我理解正确的话,您会问数据库是否使用二进制格式来存储数据。是的。数据库和应用程序之间的层决定了返回给应用程序的格式。
实际上,这与您的问题正好相反—dbal接收类型化信息,然后将其转换为应用程序可以处理的任何信息。
u5rb5r592#
varchar基本上是一种字符类型,它将数字字符串化为字符。sql只允许您将列作为一个整体进行自定义。提取单个值并更改其数据类型是我从未遇到过的一种做法。虽然它真的很强大。希望这能回答你的问题。