How do I create an index on a table that exist in a remote SQL Server database using the openquery syntax?
A:
I'm not certain however I suspect that this cannot be done.
OPENQUERY is intended to return a Result Set and so is unlikely to accept DDL statements.
See the Microsoft Books Online reference for examples of acceptable usage scenarios.
John Sansom
2009-07-10 13:28:42
+1
A:
You can't on your side. The index must be added to a local object only. You can't use an indexed view either.
You can ask the other party to add an index for you to their table...
Edit: Expanding John's answer... You could try:
SELECT * FROM OPENQUERY(LinkedServer, 'CREATE INDEX etc;SELECT 0 AS foobar')
gbn
2009-07-10 13:29:08