sql >> Databáze >  >> RDS >> Mysql

php čtení bitového pole mysql vrací podivný znak

MySQL doslova vrací 0x00 a 0x01 pro bitová pole. Budete je muset převést na něco vhodného na obou stranách PHP

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

nebo v dotazu:

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

který jej převede na int a vrátí se jako „0“ a „1“ (0x48 a 0x49).

Jen jako stranou, některé ze starších mysql knihoven předcházejí podporu skutečných bitových polí v MySQL (když byly tiše převedeny na char(1)) a zničí hodnoty, takže pokud jste uvízli u jednoho z těch dinosaurů verze, možná budete muset použít verzi dotazu spíše než konverzi na straně PHP.



  1. Připojte se k nám na Microsoft Access s SQL Server Academy část II

  2. Klauzule OUTPUT v MySQL

  3. Má pořadí jmenovaných parametrů smysl pro poskytovatele dat MySql .Net?

  4. LAST_INSERT_ID() vrací více řádků 0?