question

Jose Mayorga avatar image
Jose Mayorga asked

Slow query due to variable

Hello everyone,

this query is driving me crazy The problem is that when I'm in a server and execute a query against another server, it works well when I use hardcoded values but turns terrible slow when I use a variable. I've looked everywhere but haven't got the right answer. This problem exist in queries and Stored Procedures. I've tried this with parameters instead of variables and the problem persists.

The weird thing is that two days ago I was able to execute the query qith the variable without problems.

Any insight will be welcome

Thanks

USE DataBaseInServerA

Declare @date smalldatetime
Set @date = ‘1987-03-15’
Select * from ServerB.asd.dbo.person
Where birthday = '1987-03-15' --- < This works perfectly

Select * from ServerB.asd.dbo.person
Where birthday = @date --- < This takes toooo long
t-sqlquery
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Jose Mayorga avatar image
Jose Mayorga answered

Now it works fine. The problem was an option in the server.

Under this path:

Server Objects - Providers - SQLOLEDB

I activated the 'Dynamic parameters' option and that was it! silly, uh?

The problem was that the ServerB was sending the whole table and ServerA was applying the filter instead of pasing the parameter value so the ServerB could apply the filter

1 comment
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Rob Farley avatar image Rob Farley commented ·
Yup, that'd do it. Good that you asked (and answered), because it will hopefully help someone else who has the same problem with their linked servers. Make sure you mark it as the accepted answer.
5 Likes 5 ·
Murat avatar image
Murat answered

i couldnt find the place to change the settings. :/

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.