Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

SQL Server EXEC misinterpreting database name

This: @query = SELECT Count(*) FROM ReportServer$DEVSVR1.INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE'
executes fine if copied into new query window. But fails EXEC @query with this error:

Database ‘SELECT Count(*) FROM ReportServer$DEVSVR1’ does not exist.

SQL is incorrectly parsing the phrase ‘SELECT Count(*) FROM ReportServer$DEVSVR1’
as the database name.

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

EXEC @query means execute procedure with name that is in @query variable.
You probably want EXEC(@query) which executes the string

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading