データベースに依存しない方法でSQLデータベースにテーブルが存在するかどうかを確認する最良の方法は何ですか?
私が思いついた:
bool exists;
const string sqlStatement = @"SELECT COUNT(*) FROM my_table";
try
{
using (OdbcCommand cmd = new OdbcCommand(sqlStatement, myOdbcConnection))
{
cmd.ExecuteScalar();
exists = true;
}
}
catch
{
exists = false;
}
これを行うより良い方法はありますか?データベースへの接続が失敗した場合、この方法は機能しません。Sybase、SQL サーバー、Oracle の方法を見つけましたが、すべてのデータベースで機能する方法はありません。