Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Pola dziesiętne MySQL zwracane jako ciągi w PHP

Szczerze w to wątpie. Ułamki dziesiętne używają matematyki stałoprzecinkowej i nie ma typu danych w PHP, który mógłby to zapewnić. Liczby zmiennoprzecinkowe zbliżają się do siebie, ale w rzeczywistości są zaokrąglone, co oznacza, że ​​przypisanie 2 do liczby zmiennoprzecinkowej może spowodować zamiast tego 1.999999999999999999. Więc nawet jeśli MySQL oferuje sposób na przekształcenie liczby dziesiętnej w liczbę zmiennoprzecinkową w PHP, ryzykujesz utratę danych przez rzutowanie z liczby dziesiętnej na zmiennoprzecinkową.

Aby poradzić sobie z tym czysto, potrzebujesz czegoś takiego jak GMP , ale jak można się domyślić, MySQL nie może tego automatycznie zapewnić. Musisz to zrobić ręcznie w PHP.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Polecenia SQL niezgodne z H2

  2. Czy mysql wiele wstawia w pojedynczym zapytaniu niepodzielnym?

  3. schemat bazy danych przyjaźni

  4. Nie można połączyć się z MySQL za pomocą Sequelize

  5. Jak wstawiać, usuwać, wybierać, aktualizować wartości w datagridview w C# za pomocą MYSQL