Подключитесь к серверу оракула, используя CDatabase из MFC

Я пытаюсь подключиться к базе данных оракула, где сервер установлен на моем ноутбуке и работает через порт 1521 и имя «orcl». Сначала я подключаюсь, используя Java и jdbc, используя этот код:

private static final String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
private static final String USERNAME = "cosmin";
private static final String PASSWORD = "123456";
private static Connection conn;
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);

И теперь я пытаюсь подключиться, используя MFC и класс CDatabase, но не могу подключиться.

    CDatabase db;
TRY{
db.OpenEx(L"ODBC;DRIVER={MICROSOFT ODBC FOR ORACLE};DSN=orcl;SERVER=@localhost:1521:orcl;UID=cosmin; PWD=123456");

db.Close();
} CATCH(CDBException, e) {
AfxMessageBox(L"Database error: " + e->m_strError);
}

Я получаю следующую ошибку: имя источника данных не найдено и драйвер по умолчанию не указан. Как я могу решить эту проблему?

Спасибо!

0

Решение

Если вы собираетесь к нам data source name, Вот это как добраться до инструмента.

И если вы хотите добавить имя в вашей программе:

BOOL ret= SQLConfigDataSource(
NULL,
ODBC_ADD_DSN,
(LPSTR) "Microsoft Access Driver (*.mdb)\0",
(LPSTR) "DSN=MS Access Database\0""Description=MS Access Database\0");
if( ! ret )
{
AfxMessageBox( _T("The 'Data Source Name' failed to install\nPlease call Tech Support\n800-123-4567") );
return FALSE;
}

С другой стороны, (я не пробовал), вы должны иметь возможность использовать DSN-соединение меньше строка. Но это означает, что вы не можете DSN=orcl; так как нет такого DSN.

1

Другие решения

Других решений пока нет …