目前我正在尝试将Excel 2007工作簿中的数据导入SQL Server 2008 R2表'test'。
导入工作完美,但是,工作簿上的数据不断变化,需要每隔十分钟左右导入一次。
当我重新运行导入时,SQL Server只复制所有数据并最终得到相同的重复项 - 如何以仅添加新的yield User.find({
email: this.request.body.email
}).exec()
.then( user => {
if ( user.verifyPassword(self.request.body.password) ) {
self.status = 200
self.body = {
token: user.token
}
} else {
self.status = 500
self.body = "Problem signing in."
}
}, error => {
self.status = 500
self.body = "Problem signing in."
})
个已更改列的方式进行导入旧数据?
我试图导入到另一个表并仅复制新数据(不是我需要的,也不是我的工作)。
此外,以下似乎很有希望,但不确定它会做我需要的......
UPDATE
对此有任何帮助将不胜感激 - 如果有任何遗漏,请告诉我。
由于
答案 0 :(得分:0)
MERGE INTO dbo.test AS C
USING (SELECT TOP 1 [A], [B], [C], [D], [E], [F], [G], [H], [I] FROM dbo.test_import) AS CT
ON C.[A] = CT.[A]
WHEN MATCHED THEN
UPDATE
SET
C.[B] = CT.[B],
C.[C] = CT.[C],
C.[D] = CT.[D],
C.[E] = CT.[E],
C.[F] = CT.[F],
C.[G] = CT.[G],
C.[H] = CT.[H],
C.[I] = CT.[I]
WHEN NOT MATCHED THEN
INSERT ([A], [B], [C], [D], [E], [F], [G], [H], [I])
VALUES (CT.[A], CT.[B], CT.[C], CT.[D], CT.[E], CT.[F], CT.[G], CT.[H], CT.[I]);