Я пытаюсь импортировать некоторые данные из файла MS-Access в базу данных SQL Server. Я продолжаю получать ошибки первичного ключа, потому что некоторые данные перекрываются. Поэтому я попытался использовать ON DUPLICATE KEY UPDATE
, а также INSERT IGNORE
. Кажется, что оба неизвестны моему SQL Server (работает под управлением 2008 R2), так как я получаю синтаксические ошибки. Нужна ли какая-нибудь дополнительная библиотека или INSERT IGNORE
и ON DUPLICATE KEY
не могут использоваться при вставке с запросом выбора в .mdb? Вот фрагмент кода:
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».