I want to construct the query used with the OPENROWSET method.
Example:
SELECT *
FROM
OPENROWSET
('SQLOLEDB', 'srv'; 'login'; 'mdp';
'SELECT *
FROM Case
WHERE ID = ' + @caseID)
But when I do that I get the error: Incorrect Syntax near '+'
How can I build the query? Thank
The OPENROWSET function can be referenced in the FROM clause of a query as if it were a table name. The OPENROWSET function can also be referenced as the target table of an INSERT , UPDATE , or DELETE statement, subject to the capabilities of the OLE DB provider.
The OPENROWSET(BULK...) function allows you to access files in Azure Storage. OPENROWSET function reads content of a remote data source (for example file) and returns the content as a set of rows.
Although the query in OPENROWSET
is specified as a string and by that means looks very much like a dynamic query, the syntax does not allow it to be constructed likewise, out of parts.
I'm afraid, you'll have to build a dynamic query, which will call OPENROWSET
, something like this:
SET @sql = '
SELECT *
FROM
OPENROWSET
(''SQLOLEDB'', ''srv''; ''login''; ''mdp'';
''SELECT *
FROM Case
WHERE ID = ' + @caseID + ''')';
EXEC(@sql);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With