Проверьте, могу ли я выполнить какую-нибудь sql-команду - PullRequest
0 голосов
/ 09 февраля 2010

Я использую ADO .NET и MS SQL Server 2008.

У меня есть объект подключения к серверу и команда:

SqlConnection conn = /* my connection*/;
string cmd = "some_sql_command";

Я хочу проверить, может ли SQL Server выполнить cmd. Я не хочу выполнять cmd, но я хочу знать, может ли SQL Server выполнить его.

cmd может быть любым единственным оператором SQL, это не процедура, транзакция или несколько команд и т. Д.

1 Ответ

3 голосов
/ 09 февраля 2010

Ну, вы всегда можете начать транзакцию, выполнить команду, а затем откатить транзакцию, чтобы в базу данных не было внесено никаких изменений.

Другой вариант - использовать ServerConnection.ExecuteNonQuery метод, который, когда передается флаг ParseOnly , только анализирует команду и больше ничего не делает.

...