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() returnerer null hvis argumentet er null :
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'