Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Consulta SQL com dados binários (PHP e MySQL)


Tente adicionar X , x ou 0x na frente dos dados binários usados ​​para pesquisa:
SELECT id FROM test WHERE pid = '0xÞFÈ>ZPÎ×jRZ{æ×';

EDITAR: tente também isso:
SELECT id FROM test WHERE BINARY pid = 'ÞFÈ>ZPÎ×jRZ{æ×';

OU
SELECT id FROM test WHERE HEX(pid) = BIN2HEX('0xÞFÈ>ZPÎ×jRZ{æ×');

como suposto aqui:Como selecionar com um campo binário? (php,mysql)

SE NADA DO ACIMA FUNCIONAR: Tente obter o pid em HEX formato, como
SELECT id, HEX(pid) pid, test FROM test

e, em seguida, ao pesquisar, tente apenas:
SELECT id, test FROM test WHERE HEX(pid) = '{$my_pid}'

Mas não tenho certeza de como você obtém o pid dados para PHP ou mesmo se você passa os dados binários para o seu select - where consulta... Apenas supondo devido ao php marcação...