MySQL表添加双值

ber*_*rkc 3 mysql

我正在尝试在mySQL控制台上创建表。

CREATE TABLE TRY (Essn int(10), Pno int(2), Hours DOUBLE(40,0));
Run Code Online (Sandbox Code Playgroud)

当我尝试向表中添加内容时:

INSERT INTO TRY ('123456789','1','32,5');
Run Code Online (Sandbox Code Playgroud)

我有一个关于语法的错误。我找不到问题。有人可以帮忙吗?

Pau*_* Lo 5

删除引号,将32.5替换为32.5,然后添加VALUES关键字即可:

INSERT INTO TRY VALUES (123456789,1,32.5);
Run Code Online (Sandbox Code Playgroud)

您可能还想更改双字段定义,以允许在Hours字段中使用更多的十进制数字:

CREATE TABLE TRY (Essn int(10), Pno int(2), Hours DOUBLE(40,2));
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参阅MySQL的近似值部分

“(M,D)”表示总共可以存储多达M位的值,其中D位可以存储在小数点后。例如,显示为FLOAT(7,4)的列看起来像-999.9999。MySQL在存储值时执行四舍五入,因此,如果将999.00009插入FLOAT(7,4)列,则近似结果为999.0001。