I MariaDB, CRC32()
er en indbygget numerisk funktion, der beregner en cyklisk redundanskontrolværdi og returnerer en 32-bit usigneret værdi.
CRC32 er en populær kontrolsum-algoritme, der bruges til at opdage datakorruption.
Syntaks
Syntaksen ser sådan ud:
CRC32(expr)
Hvor expr
forventes at være en streng og (hvis muligt) behandles som en, hvis den ikke er det.
Eksempel
Her er et eksempel:
SELECT CRC32('Cat');
Resultat:
+--------------+| CRC32('Kat') |+---------------+| 2786264392 |+--------------+
Her er en sammenligning med forskellige tilfælde:
SELECT
CRC32('Cat'),
CRC32('CAT'),
CRC32('cat');
Resultat:
+--------------+-------------+--------------+| CRC32('Kat') | CRC32('CAT') | CRC32('kat') |+--------------+--------------+------ --+| 2786264392 | 150536482 | 2656977832 |+--------------+--------------+-------------+Ikke-strenge-argumenter
Argumentet forventes at være en streng og (hvis muligt) behandles som en, hvis det ikke er det.
Eksempel:
SELECT CRC32('10'), CRC32(10);
Resultat:
+-------------+------------+| CRC32('10') | CRC32(10) |+-------------+-------+| 2707236321 | 2707236321 |+-------------+------------+Nul-argumenter
CRC32()
returnerernull
hvis argumentet ernull
:SELECT CRC32(null);
Resultat:
+--------------+| CRC32(nul) |+-------------+| NULL |+-------------+Manglende argumenter
Kalder
CRC32()
med det forkerte antal argumenter eller uden argumenter resulterer i en fejl:SELECT CRC32();
Resultat:
FEJL 1582 (42000):Forkert parameterantal i kaldet til den oprindelige funktion 'CRC32'Og:
SELECT CRC32(10, 2);
Resultat:
FEJL 1582 (42000):Forkert parameterantal i kaldet til den oprindelige funktion 'CRC32'