sql >> Database >  >> RDS >> Mysql

BLOB of VARBINARY gebruiken voor versleutelde gegevens in MySQL?

Zowel BLOB als VARBINARY zijn "string" datatypes, die binair opslaan strings (in feite byte-arrays), in tegenstelling tot de gebruikelijke stringtypes, die karakter opslaan tekenreeksen, met tekensetcodering enz.

In de meeste opzichten kun je een BLOB-kolom beschouwen als een VARBINARY-kolom die zo groot kan zijn als je wilt.

BLOB verschilt op de volgende manieren van VARBINARY:

  • Er is geen verwijdering van volgspaties voor BLOB-kolommen wanneer waarden worden opgeslagen of opgehaald.
  • Voor indexen op BLOB-kolommen moet u de lengte van een indexvoorvoegsel opgeven.
  • BLOB-kolommen kunnen geen DEFAULT-waarden hebben.

Gebruik BLOB , want als je versleutelde waarden eindigen op een spatiebyte (hex 20), zou het worden afgekapt met VARBINARY, waardoor je waarde effectief wordt beschadigd. U plaatst ook geen index op de versleutelde waarde, dus het indexprobleem doet er niet toe, en u zult ook geen standaardwaarde hebben.



  1. SQL-query om afzonderlijke rijen uit de linkertabel te selecteren na de inner join naar de rechtertabel

  2. Hoe kan ik dubbele opeenvolgende waarden in deze tabel vinden?

  3. OP VERWIJDEREN CASCADE

  4. Hoe tekst tussen 2 tekens te verwijderen met behulp van een query in MYSQL