我的动态查询有问题,因为我有一些空值。如果它没有任何值,我已经将值设为可选,但我仍然收到错误。有什么想法吗?
这是我对数据库连接器的动态查询。我认为问题出在 BROKER 和 COTTON 组织声明上
insert into [AWH_PrjPathFinder].[dbo].[ws_balesDataExt] values ('#[payload['FULLDATE']]', '#[payload.BROKER = (payload['BROKER'] == null) ? '' : payload.BROKER.toString()]', '#[payload.CENTER = ( payload['CENTER'] == null) ? '' : payload.CENTER.toString()]', '#[payload.DATATYPE = ( payload['DATATYPE'] == null) ? '' : payload.DATATYPE.toString()]','#[payload.COTTONORG = (payload['COTTONORG'] == null) ? '' : payload.COTTONORG.toString()]',#[payload['UNIT']],'#[payload['dateDataEnteredInAGDB']]')
这是我的示例输入文件。
[ {
"FULLDATE": "28/09/2015",
"CENTER": "B",
"DATATYPE": "CDLV",
"UNIT": "195" },
{
"FULLDATE": "28/09/2015",
"CENTER": "M",
"DATATYPE": "CRCV",
"UNIT": "47"
},
{
"FULLDATE": "28/09/2015",
"CENTER": "M",
"DATATYPE": "CRCV",
"UNIT": "60"
},
{
"FULLDATE": "28/09/2015",
"CENTER": "M",
"DATATYPE": "DDMP",
"UNIT": "84"
},
{
"FULLDATE": "28/09/2015",
"CENTER": "M",
"DATATYPE": "DRCV",
"UNIT": "24"
},
最佳答案
在形成插入时,您应该始终指定列(以正确的顺序)(这一点由 Gordon Linoff 提出)。
例如(下面第二行已经添加 - 这是一个猜测)
INSERT INTO [AWH_PrjPathFinder].[dbo].[ws_balesDataExt]
([FULLDATE],[BROKER],[CENTER],[DATATYPE],[COTTONORG],[UNIT],[dateDataEnteredInAGDB])
VALUES
( '#[payload['FULLDATE']]'
, '#[payload.BROKER = (payload['BROKER'] == null) ? '' : payload.BROKER.toString()]'
, '#[payload.CENTER = ( payload['CENTER'] == null) ? '' : payload.CENTER.toString()]'
, '#[payload.DATATYPE = ( payload['DATATYPE'] == null) ? '' : payload.DATATYPE.toString()]'
, '#[payload.COTTONORG = (payload['COTTONORG'] == null) ? '' : payload.COTTONORG.toString()]'
, '#[payload['UNIT']]
, '#[payload['dateDataEnteredInAGDB']]'
)
关于sql - 数据库可选参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33113926/