Я использую SSIS в Visual Studio 2012, работающий с базой данных SQL Server 2012. Я получаю ошибку, показанную ниже при использовании OLE DB Source. Этот OLE DB Source выполняет SQL, аналогичный показанному ниже. Когда я удаляю инструкцию GO в конце, пакет SSIS выполняется нормально.SSIS: «Неверный синтаксис рядом с« GO ».» error
В SQL Server Management Studio SQL выполняется нормально, независимо от того, присутствует ли инструкция GO.
Источник OLE DB выполняется в рамках задачи потока данных.
Почему эта ошибка GO вызывает эту ошибку при выполнении в пакете SSIS и что делать с этим? Огромное спасибо.
Ошибка:
[OLE DB Source from SQL variable [33]] Error: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80040E14. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E14 Description: "Statement(s) could not be prepared.". An OLE DB record is available. Source: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80040E14 Description: "Incorrect syntax near 'GO'.".
SQL:
/* Test statement */
SELECT 'test' as N'test'
GO
'GO' не является допустимым TSQL ключевое слово. Он просто используется клиентскими инструментами, такими как SSMS, как разделитель партий. Они не отправляют 'GO' на SQL Server. –