ความยาวสูงสุด 8000 อักขระสำหรับ OPENQUERY กับเซิร์ฟเวอร์ที่เชื่อมโยง


10

ฉันมีคำถามที่ฉันพยายามเรียกใช้OPENQUERYบน SSRS / SQL Server 2014 แต่ฉันได้รับข้อผิดพลาด:

สตริงอักขระที่ขึ้นต้นด้วย [... ] ยาวเกินไป ความยาวสูงสุดคือ 8000

มีวิธีแก้ไขข้อ จำกัด นี้ไหม?

สำหรับการอ้างอิงฉันพยายามเรียกใช้แบบสอบถามจาก SSRS ผ่านเซิร์ฟเวอร์ MySQL ที่เชื่อมโยง

คำตอบ:


12

คุณสามารถข้ามขีด จำกัด อักขระได้สูงสุด 8000 ตัวOPENQUERYโดยใช้EXECUTE ATดังนี้:

DECLARE @myStatement VARCHAR(MAX)
SET @myStatement = 'SELECT * FROM TABLE WHERE CHARACTERS.... ' -- Imagine that's longer than 8000 characters

EXECUTE (@myStatement) AT LinkedServerName

เพื่อให้แน่ใจว่าสิ่งนี้จะไม่เกิดข้อผิดพลาดคุณต้องเปิดใช้งานRPC OUTตัวเลือกบนเซิร์ฟเวอร์ที่เชื่อมโยงโดยการออกคำสั่งต่อไปนี้:

EXEC master.dbo.sp_serveroption @server=N'LinkedServerName', @optname=N'rpc out', @optvalue=N'true'

หรือเปิดใช้งานภายใน GUI:

ป้อนคำอธิบายรูปภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.