Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

php đọc trường bit mysql trả về ký tự lạ

MySQL thực sự trả về 0x00 và 0x01 cho các trường bit. Bạn sẽ phải chuyển đổi chúng thành thứ gì đó phù hợp với PHP

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

hoặc trong truy vấn:

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

sẽ chuyển nó thành int và trả về là '0' và '1' (0x48 và 0x49).

Ngoài ra, một số thư viện mysql cũ hơn hỗ trợ trước cho các trường bit thực trong MySQL (khi chúng được chuyển đổi âm thầm thành char (1)) và sẽ làm thùng rác các giá trị, vì vậy nếu bạn bị mắc kẹt với một trong những con khủng long đó phiên bản, bạn có thể phải sử dụng phiên bản truy vấn thay vì chuyển đổi bên 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. Mysql Tham gia bên trong với điều kiện HOẶC?

  2. Nhận xét lồng nhau trong PHP và MySQL

  3. Cấp phép MySQL và GPL

  4. Thuật sĩ nhập dữ liệu bảng bàn làm việc MySQL cực kỳ chậm

  5. Chèn bản ghi vào bảng MySQL bằng Java