Я пытаюсь подключиться к базе данных оракула, где сервер установлен на моем ноутбуке и работает через порт 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);
}
Я получаю следующую ошибку: имя источника данных не найдено и драйвер по умолчанию не указан. Как я могу решить эту проблему?
Спасибо!
Если вы собираетесь к нам 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.
Других решений пока нет …