Mysql
 sql >> база данни >  >> RDS >> Mysql

php четене на mysql битово поле, връщащо странен символ

MySQL буквално връща 0x00 и 0x01 за битовите полета. Ще трябва да ги конвертирате в нещо подходящо от страна на PHP

$bitvalue = ($bitvalue == 0x01) ? 'TRUE' : 'FALSE'

или в заявката:

SELECT CAST(bitfield AS unsigned int)
FROM ...

което ще го преобразува в int и ще върне като '0' и '1' (0x48 и 0x49).

Само настрана, някои от по-старите библиотеки на mysql поддържат предварителна поддръжка за реални битови полета в MySQL (когато са били преобразувани безшумно в char(1)) и ще изхвърлят стойностите, така че ако сте останали с един от тези динозавъри версии, може да се наложи да използвате версията на заявката, а не преобразуването от страна на PHP.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Набор от символи на django с MySQL странност

  2. Проблем с MySQL актуализиране на поле DATETIME от ISO 8601 формат

  3. Данни от колоната на обобщената таблица на MySQL като редове

  4. Липсва първия ред данни от MYSQL

  5. Използване на HHVM с WordPress