1>Test.obj : error LNK2019: 无法解析的外部符号 "public: static void __cdecl oracle::occi::Environment::terminateEnvironment(class oracle::occi::Environment *)" (?terminateEnvironment@Environment@occi@oracle@@SAXPAV123@@Z),该符号在函数 __catch$_wmain$0 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: virtual __thiscall oracle::occi::SQLException::~SQLException(void)" (??1SQLException@occi@oracle@@UAE@XZ),该符号在函数 __catch$_wmain$0 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: virtual char const * __thiscall oracle::occi::SQLException::what(void)const " (?what@SQLException@occi@oracle@@UBEPBDXZ),该符号在函数 __catch$_wmain$0 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall oracle::occi::Date::~Date(void)" (??1Date@occi@oracle@@QAE@XZ),该符号在函数 _wmain 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall oracle::occi::Date::toText(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (?toText@Date@occi@oracle@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV45@0@Z),该符号在函数 _wmain 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: static class oracle::occi::Environment * __cdecl oracle::occi::Environment::createEnvironment(enum oracle::occi::Environment::Mode,void *,void * (__cdecl*)(void *,unsigned int),void * (__cdecl*)(void *,void *,unsigned int),void (__cdecl*)(void *,void *))" (?createEnvironment@Environment@occi@oracle@@SAPAV123@W4Mode@123@PAXP6APAX1I@ZP6APAX11I@ZP6AX11@Z@Z),该符号在函数 _wmain 中被引用
1>C:\Users\Administrator\Desktop\OCCI\Test\Debug\Test.exe : fatal error LNK1120: 6 个无法解析的外部命令
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: virtual __thiscall oracle::occi::SQLException::~SQLException(void)" (??1SQLException@occi@oracle@@UAE@XZ),该符号在函数 __catch$_wmain$0 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: virtual char const * __thiscall oracle::occi::SQLException::what(void)const " (?what@SQLException@occi@oracle@@UBEPBDXZ),该符号在函数 __catch$_wmain$0 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall oracle::occi::Date::~Date(void)" (??1Date@occi@oracle@@QAE@XZ),该符号在函数 _wmain 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall oracle::occi::Date::toText(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)const " (?toText@Date@occi@oracle@@QBE?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@ABV45@0@Z),该符号在函数 _wmain 中被引用
1>Test.obj : error LNK2019: 无法解析的外部符号 "public: static class oracle::occi::Environment * __cdecl oracle::occi::Environment::createEnvironment(enum oracle::occi::Environment::Mode,void *,void * (__cdecl*)(void *,unsigned int),void * (__cdecl*)(void *,void *,unsigned int),void (__cdecl*)(void *,void *))" (?createEnvironment@Environment@occi@oracle@@SAPAV123@W4Mode@123@PAXP6APAX1I@ZP6APAX11I@ZP6AX11@Z@Z),该符号在函数 _wmain 中被引用
1>C:\Users\Administrator\Desktop\OCCI\Test\Debug\Test.exe : fatal error LNK1120: 6 个无法解析的外部命令
//
#pragma once
#include "stdafx.h"#include"occi.h"
#include "occiCommon.h"
#include "occiControl.h"
#include "occiData.h"
#include "occiObjects.h" #include<iostream>
#include<string>#pragma comment(lib,"oraocci11d.lib")
//#pragma comment(lib,"D:\\OCCI\\instantclient_11_2\\sdk\\lib\\msvc\\vc10oraocci11d.lib")
using namespace std;
using namespace oracle::occi;int _tmain(int argc, _TCHAR* argv[])
{
cout<<"Hello OCCI"<<endl; const string userName = "system";
const string passWord = "admin123";
const string osid = "sysdba";
Environment* const env = Environment::createEnvironment();
int ret = 0; try
{
Connection* const con = env->createConnection(userName, passWord, osid);
cout << " Connected as " << userName << "@" << osid << "." << endl;
Statement *stmt = con->createStatement("Select sysdate from dual");
ResultSet *rs = stmt->executeQuery();
rs->next();
Date dt = rs->getDate(1);
cout << "Date now in database: " << dt.toText() << endl;
cout << "Closing connection." << endl;
env->terminateConnection(con);
}
catch (SQLException ea)
{
cerr << "Can't connect: " << ea.what();
ret = 1;
}
Environment::terminateEnvironment(env); system("pause");
return 0;
}