1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- #include "StdAfx.h"
- #include "MultiDBInterface.h"
- CMultiDBInterface::CMultiDBInterface(void)
- {
- }
- CMultiDBInterface::~CMultiDBInterface(void)
- {
- RemoveAllCatalog();
- }
- void CMultiDBInterface::RemoveAllCatalog()
- {
- CCatalogObj *pCatalog = NULL;
- for ( MULTCATALOG::iterator it = m_vtMulitCatalog.begin(); it != m_vtMulitCatalog.end();)
- {
- pCatalog = *it;
- it = m_vtMulitCatalog.erase(it);
- delete pCatalog;
- pCatalog = NULL;
- }
- }
- BOOL CMultiDBInterface::IsCatalogExists(IN LPCTSTR lpConnectString)
- {
- CCatalogObj *pCatalog = NULL;
- for ( MULTCATALOG::iterator it = m_vtMulitCatalog.begin(); it != m_vtMulitCatalog.end();it++)
- {
- pCatalog = *it;
- if ( _tcscmp(pCatalog->GetConnectString(),lpConnectString) == 0 )
- {
- return TRUE;
- //break;
- }
- }
- return FALSE;
- }
- BOOL CMultiDBInterface::AddCatalog(IN CONST DWORD &dwCatalogPort, IN LPCTSTR lpCatalogSource, IN LPCTSTR lpCatalogAccount, IN LPCTSTR lpCatalogPsw, IN LPCTSTR lpCatalogName)
- {
- TCHAR szConnectString[MAX_PATH] = _T("");
- if (dwCatalogPort)
- {
- _stprintf_s(szConnectString, _T("driver={SQL Server};Server=%s,%d;database=%s;uid=%s;pwd=%s"),
- lpCatalogSource, dwCatalogPort, lpCatalogName, lpCatalogAccount, lpCatalogPsw);
- }
- else
- {
- _stprintf_s(szConnectString, _T("driver={SQL Server};Server=%s;database=%s;uid=%s;pwd=%s"),
- lpCatalogSource, lpCatalogName, lpCatalogAccount, lpCatalogPsw);
- }
- if ( IsCatalogExists(szConnectString) )
- {
- return FALSE;
- }
- CCatalogObj *pCatalog = new CCatalogObj;
- if ( pCatalog == NULL )
- {
- return FALSE;
- }
- pCatalog->SetConn(szConnectString);
- if( !pCatalog->OpenCatalog() )
- {
- delete pCatalog;
- pCatalog = NULL;
- return FALSE;
- }
- return TRUE;
- }
|