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.cpp : 定义控制台应用程序的入口点。
    //
    #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;
    }
      

  2.   

    莫有ORACLE的错误信息啊,VS的看不懂