Hi,
I am migrating SQL from 2008R2 to 2014, and I met a problem I never had with Openquery, based upon a DB2OLEDB Linked Server.
I'm tryng to execute this request in SQL Server 2008R2, and it works fine :
SELECT *
FROM OPENQUERY(DISTANTSERVER, 'SELECT [myColumn]
FROM DistantSchema.Mytable')
But when I try it in SQL Server 2014, I got this error :
OLE DB provider "DB2OLEDB" for linked server "DISTANTSERVER" returned message "ILLEGAL SYMBOL "[DISTINCT ALL * + - NEXTVAL PREVVAL ROW ( USER CURRENT". SOME SYMBOLS THAT MIGHT BE LEGAL ARE: SQLSTATE: 42601, SQLCODE: -104".
Msg 7321, Niveau 16, État 2, Ligne 1
An error occurred while preparing the query "SELECT [myColumn]
FROM DistantSchema.Mytable" for execution against OLE DB provider "DB2OLEDB" for linked server "DISTANTSERVER".
I searched a bit and found out that removing square brackets could fix it, but I would prefer keep the original syntax (in order to not rewrite all my queries).
Any ideas would be helpful 🙂
Thanx!