Mysql
 sql >> база данни >  >> RDS >> Mysql

Предупреждение#1264:Грешка извън обхвата в mysql

Смятам, че имате тази грешка, защото year_exp полето е DECIMAL(2,2) и искате DECIMAL(4,2) . DECIMAL(2,2) означава число с точност 2, с до 2 знака след десетичната запетая. Но това число има 4 цифри с точност.

Тази връзка към MSDN говори за десетичната точност.

http://msdn.microsoft.com/ en-US/library/ms187746(v=SQL.90).aspx

Ето един бърз тест с подобни резултати (направен в SQL Server 2008, но мисля, че сте на MySQL...)

1) Създадена е таблица с тестова колона:

CREATE TABLE testtable (testcolumn DECIMAL(2,2))

2) Изпълнете оператор за вмъкване... :

INSERT INTO testtable (testcolumn) VALUES (23.45)

... и получи тази грешка ...

(КОМЕНТАР:една от любимите ми грешки ... "не мога да преобразувам число в число..." ха-ха)

3) Променена колона към правилните спецификации

ALTER TABLE testtable ALTER COLUMN testcolumn DECIMAL(4,2)

4) Изпълнете отново същия оператор за вмъкване. Работи.

Моля, уведомете ме, ако това помага.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Свържете Entity Framework с MYSQL във VS2019

  2. Размер на схемата на MySQL

  3. AWS rds - Как да чета от прочетена реплика в Java приложение?

  4. Как да премахнете ненулево ограничение в MySQL

  5. Филтрирайте редове в колона въз основа на зададени правила в SQL