我有一个包含列的表bit(1)和以下查询:SELECT my_bit FROM my_table.
当我echo在php页面上显示结果时,该值显示为string(3) %qu 列上的位值是0还是1.这怎么可能?
以下查询解决echoing了网页上的问题:SELECT CAST(my_bit AS UNSIGNED) AS my_bit FROM my_table.
但是,上述两个查询都适用于命令行工具.不,string(3)那里.
选择数据时一切正常,两者之间没有区别
使用命令行工具或Web界面php页面时.(这里建议使用后者.)Echoing必须使用CAST函数完成,但WHERE不受parentehis的影响:返回正确的行.
bit类型值是否echoed相同,string无论bit值是0还是1?bit(1)类型列插入/选择数据时是否有任何特殊问题需要考虑?(快速测试表明一切都按预期工作:0插入0和1插入1,但我可能会遗漏一些东西.)我正在使用MAMP在本地测试:PHP 5.3.2和MySQL 5.1.44.命令行工具是指Sequel Pro(不是MAMP的PhpAdmin).Php页面utf-8和查询使用SET NAMES 'utf8'. …