Мне нужно получить список таблиц в базе данных Oracle, определенной DSN, который использует драйвер Oracle ODBC.
Однако OdbcConnection.GetSchema("Tables")
выдает исключение ERROR [HYT00] [Oracle][ODBC][Ora]ORA-01013: user requested cancel of current operation\n
или ORA-00604: error occurred at recursive SQL level 1
примерно через 30 секунд.
using (OdbcConnection connection = new OdbcConnection("Driver={Oracle in OraDB18Home1};Dbq=XE;Uid=system;Pwd=mypassword;"))
{
connection.Open();
//Also unsuccessful with "Views" and "Columns", but works with "DataTypes" and "Restrictions"
DataTable schema = connection.GetSchema("Tables");
}
База данных недавно установлена и не слишком велика.
Я могу вызвать GetSchema () без параметров, чтобы успешно извлечь все поддерживаемые коллекции схем.
Я также могу успешно выполнить запрос к моей базе данных:
OdbcCommand command = new OdbcCommand("SELECT * FROM vendors")
{
Connection = connection
};
OdbcDataReader reader = command.ExecuteReader();