Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cảnh báo # 1264:lỗi ngoài phạm vi trong mysql

Tôi tin rằng bạn đang gặp lỗi này vì year_exp trường là DECIMAL(2,2) và bạn muốn DECIMAL(4,2) . DECIMAL(2,2) có nghĩa là một số có độ chính xác 2, có tới 2 chữ số thập phân. Nhưng con số này có 4 chữ số chính xác.

Liên kết tới MSDN này nói về độ chính xác thập phân.

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

Đây là một bài kiểm tra nhanh với kết quả tương tự (được thực hiện trong SQL Server 2008, nhưng tôi nghĩ bạn đang sử dụng MySQL ...)

1) Đã tạo bảng có cột kiểm tra:

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

2) Câu lệnh chèn Ran ...:

INSERT INTO testtable (testcolumn) VALUES (23.45)

... và nhận được lỗi này ...

(BÌNH LUẬN:một trong những lỗi yêu thích của tôi ... "không thể chuyển số thành số ..." ha ha)

3) Cột được thay đổi thành thông số kỹ thuật phù hợp

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

4) Chạy lại cùng một câu lệnh chèn. Nó hoạt động.

Vui lòng cho tôi biết nếu điều này có ích.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách tìm hàng thứ n trong MySQL

  2. Lưu thông tin thẻ tín dụng trong cơ sở dữ liệu MySQL?

  3. Thiết kế cơ sở dữ liệu để phát triển ứng dụng web 'Quiz' bằng PHP và MySQL

  4. Tạo câu lệnh CREATE cho tất cả các Bảng MySql

  5. Làm thế nào để nhận được ID biến thể Woocommerce?