#pragma once /************************************************************************************************** ÀÛ¼ºÀÏ: 2008-07-30 ÀÛ¼ºÀÚ: ¹®»óÇö (youngmoon@webzen.co.kr) ¼³¸í: SQL API »ç¿ëÇϱâ À§ÇÑ °´Ã¼ **************************************************************************************************/ #include "SQLAPI/SQLAPI.h" #include #ifdef _DEBUG #pragma comment(lib, "./Uitl/lib/sqlapi.lib") #else #pragma comment(lib, "./Uitl/lib/sqlapi.lib") #endif enum VALUE_TYPE {PARAM_INPUT, PARAM_OUTPUT, FIELD_INPUT, FIELD_OUTPUT}; class CSqlLibHandler { public: CSqlLibHandler(); ~CSqlLibHandler(); //µðºñ¼­¹ö¿¡ Á¢¼ÓÇÑ´Ù. bool ConnectDBMS(); //Á¢¼Ó Á¤º¸¸¦ ¼ÂÆÃÇÑ´Ù. (strCon: "¼­¹öÁÖ¼Ò, Æ÷Æ®¹øÈ£@µðºñ¸í" À̳ª ODBC ¿¡ µî·ÏµÈ DSN ¸í) void SetConnectInfo(char* strCon, char* szID, char* szPwd, SAClient_t clienttype = SA_ODBC_Client); //ÃÖÈÄÀÇ ¿¡·¯ ¸Þ½ÃÁö¸¦ ¾Ë·ÁÁØ´Ù. const char* GetLastErrorStr(); //ÃÖÈÄÀÇ ¿¡·¯ ¸Þ½ÃÁö Äڵ带 ¾Ë·ÁÁØ´Ù. int GetLastErrorCode(); //Äõ¸®¹®À» µî·ÏÇÑ´Ù. bool SetQureyText(const char* szSQL); //Äõ¸®¹®À» ½ÇÇà ½ÃŲ´Ù. bool Exec(); //´ÙÀ½ ÇàÀ¸·Î À̵¿ÇÑ´Ù. bool FetchNext(); //ÇöÀç ¿¬°áµÇ¾îÀÖ´ÂÁö ¿©ºÎ¸¦ È®ÀÎÇÑ´Ù. bool IsConnected(); //ÇÊµå ¼ö¸¦ ¸®ÅÏÇÑ´Ù. int GetCountFiled(); bool isResultSet(); long RowsAffected(); void Disconnect(); //ÇʵåÀÇ °ªÀ» ¾ò°Å³ª ¼³Á¤ÇÑ´Ù. bool ModifyValue(VALUE_TYPE vt, const char* szCol, tm& _time); bool ModifyValue(VALUE_TYPE vt, const char* szCol, long& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, short& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, double& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, char& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, BYTE& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, char* nValue, int Size); bool ModifyValue(VALUE_TYPE vt, const char* szCol, WCHAR* nValue, int Size); bool ModifyValue(VALUE_TYPE vt, const char* szCol, WCHAR& nValue); bool ModifyValue(VALUE_TYPE vt, const char* szCol, bool& nValue); protected: //public: //Ä¿³Ø¼Ç °´Ã¼ SAConnection m_sqlconn; //Ä¿¸Çµå °´Ã¼ SACommand m_sqlcmd; //Á¢¼ÓÁ¤º¸ char m_szConnect[128]; //¾ÆÀ̵ð char m_szId[64]; //ºñ¹ø char m_szPwd[64]; //µðºñ Á¢¼Ó ŸÀÔ SAClient_t m_clienttype; //¿¡·¯ Á¤º¸¸¦ ÃëÇÕÇÑ´Ù. void SetError(const char* szError, const char* szParamter, int nLineNum, const char* szFileName, const char* szDescription, int nErrorCode); //ÃÖÈÄÀÇ ¿¡·¯ ¸Þ½ÃÁö º¸°ü std::string m_strLastError; //ÃÖÈÄÀÇ ¿¡·¯ ¸Þ½ÃÁö Äڵ带 º¸°ü int m_nErrorCode; };