I have access to an Access database and within that database are fields filled with TSQL queries. These queries are processed by T-SQL on a server. So when I write these SQL queries and put them into a field for use by the end server, I’m unable to validate the syntax/etc. I could create a temporary query in that Access database, but it’s not the same query language. For example, Access would correctly use IIF but TSQL would not (it would instead be CASE).
I don’t have direct access to this server with TSQL, is there a way I can validate my T-SQL queries (for syntax and the like)? Perhaps a web tool online?
I should note I do not have access to the SQL server. Only the Access db and that alone. I understand it will not validate table names and the like, I wouldn’t expect it to.
Actually, a combination of MattMc3’s answer and FremenFreedom’s answer should work.
Download SQL Express.
Then, declare the following stored procedure:
You can test it with:
or with:
Note: this will catch the IIF() issue. It will not catch anything related to the table structures or column structures. You would need the schema for that and a slightly different approach (“select top 0 * from () t”) woudl do it.
You might be able to do something with SQL Fiddle online. However, I would suggest having a local copy of the database.