批量插入问题与Excel中的日期从SQL到Excel表
我想将这两列从Excel中批量插入临时表## NBP_Table。但是,当我这样做时,我得到以下错误:批量插入问题与Excel中的日期从SQL到Excel表
'Operand type clash: int is incompatible with date'
这是否意味着日期不是应该被插入到表格中的格式?
create table ##NBP_Table
(
Applicable_Date date,
NBP_Value numeric(4,4)
)
insert into ##NBP_Table
values (01/04/2014,1.7107),
(02/04/2014,1.6482),
(03/04/2014,1.686),
(04/04/2014,1.6681)
来获得日期插入工作,请试试这个
create table ##NBP_Table
(
Applicable_Date date
NBP_Value numeric(5,4)
)
insert into ##NBP_Table
values ('01/04/2014',1.7107)
的日期必须在引号
我也纠正了数字数据类型为你
数字是否必须大于小数?如果是这样的原因是什么? – abs786123
第一个数字可以像构成整个数字的总数字一样查看,第二个数字可以看作小数点。所以你总共有5位数字,其中4位是小数点后的 – martpendle
表达式中的这个日期被认为是int,所以它将被执行/操作, 所以请在开始日期之前和结束日期之后使用'。 '01 -04-2014'
Create table #NBP_Table
(
Applicable_Date date,
NBP_Value numeric(5,4)
)
insert into #NBP_Table
values ('01-04-2014',1.7107),
('02-04-2014',1.6482),
('03-04-2014',1.686),
('04-04-2014',1.6681)
它得到'算术溢出错误将数字转换为数据类型数字'。当我跑了,为什么? – abs786123
是的,我已在我的答案中更正了这一点,您需要使用数字(5,4)作为传递的数据 – martpendle
是否适用于任何数字或浮点类型,其中小数精度必须小于实际数字在之前呢? – abs786123
你可以施放日期CAST('01/04/2014' AS DATETIME) –
'NUMERIC(4,4)'是指:**总共4 **个数字,** ** **数字* *小数点后面 - 所以你只能在这一列中存储从'.0000'到'.9999'的值 - 是*真正*你想要什么? ?如果您希望前4位数和小数点后4位数,则需要使用'NUMERIC(8,4)'而不是 –
是的,您需要输入日期。 –