Skip to content

we can insert negative value to unsinged float column sometimes #47945

@lcwangchao

Description

@lcwangchao

Bug Report

Please answer these questions before submitting your issue. Thanks!

1. Minimal reproduce step (Required)

create table tf(a float(1, 0) unsigned);
set sql_mode='';
insert into tf values("-100");
select * from tf;

2. What did you expect to see? (Required)

In MySQL, the inserted value should be zero:

mysql> select * from tf;
+------+
| a    |
+------+
|    0 |
+------+
1 row in set (0.00 sec)

3. What did you see instead (Required)

A negative value is inserted in TiDB:

mysql> select * from tf;
+------+
| a    |
+------+
|   -9 |
+------+
1 row in set (0.00 sec)

4. What is your TiDB version? (Required)

master, But I think it affect all versions.

Metadata

Metadata

Assignees

No one assigned

    Labels

    affects-5.4This bug affects the 5.4.x(LTS) versions.affects-6.1This bug affects the 6.1.x(LTS) versions.affects-6.5This bug affects the 6.5.x(LTS) versions.affects-7.1This bug affects the 7.1.x(LTS) versions.affects-7.5This bug affects the 7.5.x(LTS) versions.severity/majorsig/sql-infraSIG: SQL Infratype/bugThe issue is confirmed as a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions