sql >> Database teknologi >  >> RDS >> Oracle

Hvordan simulerer man 32-bit signeret heltalsoverløb i PL/SQL?

Jeg fandt endelig en måde at gøre det på. Lad os sige N er en værdi af typen NUMBER , og du skal på en eller anden måde simulere et 32-bit signeret heltalsoverløb, så:

N := MOD(N, 4294967296);
IF N > 2147483647
THEN
    N := N - 4294967296;
ELSIF N < -2147483648
THEN
    N := N + 4294967296;
END IF;


  1. Tilpasning af et Regex til at arbejde med MySQL

  2. JPA Criteria API:hvordan man henter dato i formatet mm/dd/åååå

  3. MySQL fremmednøgler - hvordan håndhæves en-til-en på tværs af tabeller?

  4. liste over skemaer med størrelser (relative og absolutte) i en PostgreSQL-database