Sql server SQL Server插入带逗号的数字

Sql server SQL Server插入带逗号的数字,sql-server,insert,numbers,comma,Sql Server,Insert,Numbers,Comma,我创建了一个数据库表: 我运行这个查询 INSERT INTO dbo.Stats (Date_of_Record, Rack_Code, Total_MB, Schools_MB, Percent_Schools, Central_MB, Percent_Central) VALUES (CAST(GETDATE() AS DATE), '78Q425', 45, 297, 1, 361, 0, 12, 0) 我得到一个错误 味精110,第15级,状态1,第1行 INSERT语句中的列少于

我创建了一个数据库表:

我运行这个查询

INSERT INTO dbo.Stats (Date_of_Record, Rack_Code, Total_MB, Schools_MB, Percent_Schools, Central_MB, Percent_Central)
VALUES (CAST(GETDATE() AS DATE), '78Q425', 45, 297, 1, 361, 0, 12, 0)
我得到一个错误

味精110,第15级,状态1,第1行
INSERT语句中的列少于values子句中指定的值。values子句中的值数必须与INSERT语句中指定的列数匹配

然而,这是可行的,但为什么我不应该用逗号插入数字呢

INSERT INTO dbo.Stats (Date_of_Record, Rack_Code, Total_MB, Schools_MB, Percent_Schools, Central_MB, Percent_Central)
VALUES (CAST(GETDATE() AS DATE), '78Q425', 45297, 1361, 0, 12, 0)

逗号分隔值。通过使用逗号,您告诉SQL Server需要更多的数据列。SQL Server对空格不敏感,因此不使用空格作为分隔符。

似乎必须使用
REPLACE()
将逗号转换为小数点。您曾问:“为什么不使用逗号插入数字?”逗号是数字字段的格式,您不需要将格式插入数据库。逗号不控制精度、比例或值。它只是将数字格式化以便于阅读;系统将其解释为另一个字段。很长一段:插入值时不要使用显示格式(你真的想用输入掩码存储电话号码还是在屏幕上应用掩码?)这里也有同样的问题。。。