我在使用简单查询插入数据时遇到了错误。我已经完成搜索,但是对于我自己的一生,我无法弄清楚发生了什么。这是我的SQL:
IF OBJECT_ID('settings') IS NOT NULL
DROP TABLE [settings]
CREATE TABLE [settings] (
[id] [bigint] IDENTITY(1,1) NOT NULL PRIMARY KEY,
[tenant_id] [bigint] NOT NULL,
[name] [varchar](32) NOT NULL,
[value] [varchar](255) NOT NULL
)
INSERT INTO settings
(name, value, tenant_id)
VALUES
('from_email' , '', 1),
('dash_rss', '', 1),
('theme', '', 1),
('version', '0.84', 1),
('iphone_theme', '', 1),
('enable_sandbox_number', 1, 1),
('twilio_endpoint', 'https://api.twilio.com/2008-08-01', 1);
我得到的错误是:将varchar值'0.84'转换为数据类型int时转换失败。
为什么在列为varchar时尝试将其转换为int?
最佳答案
我想知道SQL Server是否在试图超越您。我注意到您的“enable_sandbox_number”行包含第二个参数的整数。可能是因为这样,SQL Server正在转换为int。您可以在该行中将1
更改为'1'
吗?
关于tsql - 将varchar值转换为int时转换失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4038126/