Как проверить соединение с БД, не имея в БД ее имен таблиц - PullRequest
3 голосов
/ 15 мая 2011

Дело в том, что у меня нет имен таблиц базы данных, поэтому, пожалуйста, не предлагайте выбрать одну таблицу, чтобы сделать с ней 'SELECT COUNT (*)'

Ответы [ 3 ]

5 голосов
/ 15 мая 2011

Это зависит от базы данных, но обычно есть некоторые таблицы, которые всегда существуют или таблица даже не требуется.

Для Oracle:

SELECT 1 FROM dual

Для SqlServer:

SELECT 1

Не очень элегантно, но обычно делает работу, если вы знаете бренд базы данных.

1 голос
/ 15 мая 2011

Вы можете запустить команду, которая не выполняет запрос к таблице, например:

select @@VERSION
1 голос
/ 15 мая 2011

Вы не сказали, какой это тип базы данных, но вы могли бы использовать что-то вроде DbConnection.GetSchema, которое обязательно должно иметь работающее соединение.Я не знаю, насколько сильным будет удар, хотя ... если бы вы знали больше о типе базы данных, возможно, вы могли бы выполнить более простой запрос "heartbeat".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...