J'ai une requête que j'essaie d'exécuter via OPENQUERY
sur SSRS/SQL Server 2014, mais je reçois toujours une erreur de:
La chaîne de caractères commençant par [...] est trop longue. La longueur maximale est de 8000.
Existe-t-il un moyen de contourner cette limitation?
Pour référence, j'essaie d'exécuter une requête à partir de SSRS via un serveur MySQL lié.
Vous pouvez contourner la limite de 8 000 caractères de OPENQUERY
en utilisant EXECUTE AT
, comme suit:
DECLARE @myStatement VARCHAR(MAX)
SET @myStatement = 'SELECT * FROM TABLE WHERE CHARACTERS.... ' -- Imagine that's longer than 8000 characters
EXECUTE (@myStatement) AT LinkedServerName
Afin de vous assurer que cela ne génère pas d'erreur, vous devez activer RPC OUT
sur le serveur lié, en exécutant la commande suivante:
EXEC master.dbo.sp_serveroption @server=N'LinkedServerName', @optname=N'rpc out', @optvalue=N'true'
Ou l'activer dans l'interface graphique: