sql >> Databáze >  >> RDS >> Mysql

Problém s ukládáním velkých čísel v mysql DB

K vygenerování tohoto ID zjevně používáte PHP.

Protože jste nezmínil, co se přesně děje, mohu pouze předpokládat určité důvody pro návrh vaší databáze.

Nejprve byste toto číslo mohli uložit jako bigint a ne varchar . Je to celé číslo, které šetříte, nevidím důvod, proč byste používali varchar a zbytečně plýtvali více místem, než je potřeba.bigint používá 8 bajtů k uložení čísla. To znamená, že každé číslo s více než 8 číslicemi uložené v poli varchar by zabralo více místa než bigint pole, do kterého lze uložit čísla až 2^64.

Zadruhé se ujistěte, že nepoužíváte žádné formátování čísel před odesláním výsledku vaší výpočetní operace do db. Zkopíroval jsem/vložil jsem celé číslo, které jste zveřejnili (10000000754987) a php ho automaticky nepřevádí na vědecký zápis, takže předpokládám, že se tam na pozadí s tím generováním čísel děje něco jiného – pokud je to možné, vypněte to a uložte číslo v příslušném typu pole (bigint). Bylo by také užitečné, kdybyste zveřejnili další informace o své aplikaci a o tom, co dělá, protože chyba není vždy tam, kde si ji lidé myslí.



  1. Mysql vybrat záznamy s offsetem

  2. Instalace drahokamu mysql2 na Mac OS x Lion

  3. Data Mysql do stylizované tabulky HTML

  4. Doporučené postupy pro zálohování MySQL