【发布时间】:2012-01-13 17:54:39
【问题描述】:
我正在尝试将一些数据从 MS-Access 文件导入我的 SQL Server 数据库。由于某些数据重叠,我不断收到主键错误。因此我尝试使用ON DUPLICATE KEY UPDATE 和INSERT IGNORE。当我遇到语法错误时,我的 SQL Server(运行 2008 R2)似乎都不知道这两者。我是否需要一些附加库或者INSERT IGNORE 和ON DUPLICATE KEY 在使用选择查询插入.mdb 时不可用?这是sn-p的代码:
INSERT INTO XCManager.XC_DATA1 (STATION_ID, SENSORNAME, TIME_TAG, ORIG_VALUE, ED_VALUE, SOURCE)
SELECT STATION_ID, SENSORNAME, TIME_TAG, ORIG_VALUE, ED_VALUE, SOURCE
FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source=H:\OPERATIONS & MAINTENANCE SECTION\Modeling & Gauging\PCBase2\PCBASE2 Files.mdb')...RUMN3
ON DUPLICATE KEY UPDATE STATION_ID=STATION_ID
解析结果如下:
消息 156,第 15 级,状态 1,第 3 行
关键字“ON”附近的语法不正确。
【问题讨论】:
-
能否更改 Sql Server 架构?
-
我应该在架构中寻找允许使用 INSERT IGNORE 或 ON DUPLICATE KEY UPDATE 的特定权限或属性吗?
标签: sql-server-2008 insert duplicates key