正在插入节点MSSQL不正确的日期值

时间:2018-03-22 16:42:40

标签: sql-server node.js tedious

我在插入日期值时遇到了一些问题。我正在将数据从DB2服务器导入SQL 2016服务器,虽然我可以插入日期显示为以下格式的记录

0001-01-01

我也有这个弃用的警告告诉我使用日期,我相信我是。

enter image description here

这是我的代码。我已经尝试将日期格式化为YYYY-MM-DD甚至是YYYYMMDD,但似乎没有解决问题。

table = new sqlDB.Table('tempInsert')
table.create = false
table.columns.add('District',sqlDB.VarChar(100),{nullable: true})
table.columns.add('Alias',sqlDB.VarChar(100),{nullable: true})
table.columns.add('Account',sqlDB.VarChar(10),{nullable: true})
table.columns.add('ShareID',sqlDB.VarChar(4),{nullable: true})
table.columns.add('EffDate',sqlDB.Date,{nullable: true})
table.columns.add('ExpDate',sqlDB.Date,{nullable: true})

for(i = 0; i < data.districts.length;i++){

    table.rows.add(
        data.districts[i].DISTRICT,
        data.districts[i].ALIAS,
        data.districts[i].ACCOUNT_NUMBER,
        data.districts[i].ID,
        moment(data.districts[i].EFFECTIVE_DATE).format('yyyy-MM-dd'),
        moment(data.districts[i].EXPIRATION_DATE).format('yyyy-MM-dd')
    )

}

我的sql表。这样你就可以看到它是一个日期字段。

CREATE TABLE [dbo].[tempInsert](
	[District] [varchar](100) NULL,
	[Alias] [varchar](100) NULL,
	[Account] [varchar](10) NULL,
	[ShareID] [varchar](4) NULL,
	[EffDate] [date] NULL,
	[ExpDate] [date] NULL
) ON [PRIMARY]
GO

1 个答案:

答案 0 :(得分:0)

尝试使用以下格式: moment(data.districts[i].EFFECTIVE_DATE).format('YYYYMMDD HH:mm:ss')