Проверили ли сте, че стойността, която се съхранява в базата данни, всъщност е U+003f (въпросителен знак)? Има всякакви конвенции за това как да се показват знаци, които не съществуват в избрания шрифт, и да се показват като ?' е доста често.
Така че най-вероятно символът се съхранява правилно и по каквито и да е причини просто се показва като „?“. По принцип игнорирайте как се изобразява и вижте каква кодова точка се съхранява в базата данни. Дали е U+9996 или U+003f (или нещо съвсем друго)? Не допускайте сляпо, че само защото се изобразява като въпросителна, всъщност е въпросителна, която се съхранява в базата данни.