我有一个奇怪的问题,将我的十进制值输入mysql数据库。
我有一张表格,amount
列标记为decimal
列声明如下所示:
`amount` DECIMAL NOT NULL,
在我的代码中,我尝试使用以下
在该数据库中插入一行decimal amount=0.9902888269673553777395003M;
command.CommandText="insert into `mytable` (..., `amount`, ....) values (....,@amount,...)";
command.Parameters.AddWithValue("@amount", amount);
执行命令后,行将被插入到数据库中,但无论我做什么,数量总是为0。
我做错了什么?
答案 0 :(得分:3)
嗯,你忘了以DECIMAL(M,D)
的形式定义小数列的大小。因此,您的列定义应低于这意味着总长度为30位的数字,小数点后最多15位数
`amount` DECIMAL(30,15) NOT NULL,