|
@@ -1,6 +1,21 @@
|
|
|
#include "pch.h"
|
|
|
#include "Database.h"
|
|
|
|
|
|
+VOID _dprintf(CHAR* pszStr, ...)
|
|
|
+{
|
|
|
+ const int LOGLEN = 3072;
|
|
|
+ char szData[LOGLEN] = { 0 };
|
|
|
+ _stprintf_s(szData, _T("[%s %s]\n\t"), _T("Db"), CTime::GetCurrentTime().Format(_T("%H:%M:%S")).GetString());
|
|
|
+ int len = strlen(szData);
|
|
|
+ va_list args;
|
|
|
+ va_start(args, pszStr);
|
|
|
+ _vsnprintf_s(szData + len, LOGLEN - len, LOGLEN - len, pszStr, args);
|
|
|
+ va_end(args);
|
|
|
+ if (szData[strlen(szData)-1] != '\n')
|
|
|
+ strcat_s(szData, "\n");
|
|
|
+ OutputDebugStringA(szData);
|
|
|
+}
|
|
|
+
|
|
|
#define CHECKDB if (m_pConn == NULL || !m_bConnected) return FALSE
|
|
|
|
|
|
char* CDatabase::m_spImage = NULL;
|
|
@@ -116,7 +131,7 @@ BOOL CDatabase::Init(std::string host, std::string user, std::string password, s
|
|
|
m_pError = mysql_error(m_pConn);
|
|
|
if (!mysql_real_connect(m_pConn, host.c_str(), user.c_str(), password.c_str(), db.c_str(), 0, NULL, 0)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("mysql_real_connect error=%s\n"), m_pError ? m_pError: "");
|
|
|
+ _dprintf(_T("mysql_real_connect error=%s\n"), m_pError ? m_pError: "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -131,7 +146,7 @@ BOOL CDatabase::ExcuteSQL(std::string sql)
|
|
|
|
|
|
if (0 != mysql_query(m_pConn, sql.c_str())) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("ExcuteSQL error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("ExcuteSQL error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -147,7 +162,7 @@ BOOL CDatabase::InserProvider(const STProvider& provider)
|
|
|
_stprintf_s(szSql, INSER_PROVIDER, provider.name.c_str(), provider.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InserProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -162,7 +177,7 @@ BOOL CDatabase::InserProvider(std::string name, std::string note)
|
|
|
_stprintf_s(szSql, INSER_PROVIDER, name.c_str(), note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InserProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -177,7 +192,7 @@ BOOL CDatabase::DeleteProvider(std::string name)
|
|
|
_stprintf_s(szSql, DEL_PROVIDER, name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -192,7 +207,7 @@ BOOL CDatabase::UpdateProvider(std::string name, const STProvider& provider)
|
|
|
_stprintf_s(szSql, MOD_PROVIDER, provider.name.c_str(), provider.note.c_str(), name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -205,7 +220,7 @@ BOOL CDatabase::QueryProvider(std::vector<STProvider>& vtProvider)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_PROVIDER)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -214,7 +229,7 @@ BOOL CDatabase::QueryProvider(std::vector<STProvider>& vtProvider)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if ( pData == NULL ) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryProvider error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -260,7 +275,7 @@ BOOL CDatabase::InserSoc(const STSOC& soc)
|
|
|
_stprintf_s(szSql, INSER_SOC, soc.name.c_str(), soc.provider.c_str(), soc.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -310,7 +325,7 @@ over:
|
|
|
|
|
|
#ifdef _DEBUG
|
|
|
if ( !bResult )
|
|
|
- TRACE1(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
|
|
|
return bResult;
|
|
@@ -325,7 +340,7 @@ BOOL CDatabase::InserSoc(std::string name, std::string provider, std::string not
|
|
|
_stprintf_s(szSql, INSER_SOC, name.c_str(), provider.c_str(), note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -383,13 +398,13 @@ BOOL CDatabase::InserSoc(std::string name, std::string provider, std::string not
|
|
|
bResult = TRUE;
|
|
|
|
|
|
over:
|
|
|
- mysql_stmt_close(stmt);
|
|
|
-
|
|
|
#ifdef _DEBUG
|
|
|
if (!bResult)
|
|
|
- TRACE1(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InserSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
|
|
|
+ mysql_stmt_close(stmt);
|
|
|
+
|
|
|
return bResult;
|
|
|
#endif
|
|
|
}
|
|
@@ -401,7 +416,7 @@ BOOL CDatabase::DeleteSoc(std::string name)
|
|
|
_stprintf_s(szSql, DEL_SOC, name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -416,7 +431,7 @@ BOOL CDatabase::UpdateSoc(std::string name, const STSOC& soc)
|
|
|
_stprintf_s(szSql, MOD_SOC, soc.name.c_str(), soc.provider.c_str(), soc.note.c_str(), name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateSoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -429,7 +444,7 @@ BOOL CDatabase::QuerySoc(std::vector<STSOC>& vtSoc)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_SOC)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QuerySoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QuerySoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -438,7 +453,7 @@ BOOL CDatabase::QuerySoc(std::vector<STSOC>& vtSoc)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QuerySoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QuerySoc error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -484,7 +499,7 @@ BOOL CDatabase::InsertBrand(const STBranch& brand)
|
|
|
_stprintf_s(szSql, INSER_BRAND, brand.name.c_str(), brand.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -499,7 +514,7 @@ BOOL CDatabase::InsertBrand(std::string name, std::string note)
|
|
|
_stprintf_s(szSql, INSER_BRAND, name.c_str(), note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -514,7 +529,7 @@ BOOL CDatabase::DeleteBrand(std::string name)
|
|
|
_stprintf_s(szSql, DEL_BRAND, name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -529,7 +544,7 @@ BOOL CDatabase::UpdateBrand(std::string name, const STBranch& brand)
|
|
|
_stprintf_s(szSql, MOD_BRAND, brand.name.c_str(), brand.note.c_str(), name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -542,7 +557,7 @@ BOOL CDatabase::QueryBrand(std::vector<STBranch>& vtBrand)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_BRAND)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -551,7 +566,7 @@ BOOL CDatabase::QueryBrand(std::vector<STBranch>& vtBrand)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -644,7 +659,7 @@ BOOL CDatabase::InsertQuarter(const STQuarter& quarter)
|
|
|
_stprintf_s(szSql, INSER_QUARTER, quarter.name.c_str(), quarter.scp.c_str(), quarter.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -659,7 +674,7 @@ BOOL CDatabase::InsertQuarter(std::string name, std::string scp, std::string not
|
|
|
_stprintf_s(szSql, INSER_QUARTER, name.c_str(), scp.c_str(), note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -674,7 +689,7 @@ BOOL CDatabase::DeleteQuarter(std::string name)
|
|
|
_stprintf_s(szSql, DEL_QUARTER, name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -689,7 +704,7 @@ BOOL CDatabase::UpdateQuarter(std::string name, const STQuarter& quarter)
|
|
|
_stprintf_s(szSql, MOD_QUARTER,quarter.name.c_str(), quarter.scp.c_str(), quarter.note.c_str(), name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -702,7 +717,7 @@ BOOL CDatabase::QueryQuarter(std::vector<STQuarter>& vtQuarter)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_QUARTER)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -711,7 +726,7 @@ BOOL CDatabase::QueryQuarter(std::vector<STQuarter>& vtQuarter)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryQuarter error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -756,7 +771,7 @@ BOOL CDatabase::InsertServer(const STServer& Server)
|
|
|
_stprintf_s(szSql, INSER_SERVER, Server.name.c_str(), Server.ip.c_str(), Server.type.c_str(), Server.user.c_str(), Server.password.c_str(),Server.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -771,7 +786,7 @@ BOOL CDatabase::InsertServer(std::string name, std::string ip, std::string type,
|
|
|
_stprintf_s(szSql, INSER_SERVER, name.c_str(), ip.c_str(), type.c_str(), user.c_str(), password.c_str(), note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -786,7 +801,7 @@ BOOL CDatabase::DeleteServer(std::string name)
|
|
|
_stprintf_s(szSql, DEL_SERVER, name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -801,7 +816,7 @@ BOOL CDatabase::UpdateServer(std::string name, const STServer& Server)
|
|
|
_stprintf_s(szSql, MOD_SERVER, Server.name.c_str(), Server.ip.c_str(), Server.type.c_str(), Server.user.c_str(), Server.password.c_str(), Server.note.c_str(), name.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -814,7 +829,7 @@ BOOL CDatabase::QueryServer(std::vector<STServer>& vtServer)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_SERVER)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -823,7 +838,7 @@ BOOL CDatabase::QueryServer(std::vector<STServer>& vtServer)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -871,7 +886,7 @@ BOOL CDatabase::InsertUser(const STUser& user)
|
|
|
_stprintf_s(szSql, INSER_USER, user.user.c_str(), user.password.c_str(), user.permission.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -886,7 +901,7 @@ BOOL CDatabase::InsertUser(std::string user, std::string password, std::string p
|
|
|
_stprintf_s(szSql, INSER_USER, user.c_str(), password.c_str(), permission.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -901,7 +916,7 @@ BOOL CDatabase::DeleteUser(std::string user)
|
|
|
_stprintf_s(szSql, DEL_USER, user.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -916,7 +931,7 @@ BOOL CDatabase::UpdateUser(std::string user, const STUser& stUser)
|
|
|
_stprintf_s(szSql, MOD_USER, stUser.user.c_str(), stUser.password.c_str(), stUser.permission.c_str(), user.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -929,7 +944,7 @@ BOOL CDatabase::QueryUser(std::vector<STUser>& vtUser)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_USER)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -938,7 +953,7 @@ BOOL CDatabase::QueryUser(std::vector<STUser>& vtUser)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryUser error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -985,7 +1000,7 @@ BOOL CDatabase::InsertBranch(const STBranch& branch)
|
|
|
branch.type.c_str(), branch.status.c_str(), branch.note.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1000,7 +1015,7 @@ BOOL CDatabase::DeleteBranch(std::string branch)
|
|
|
_stprintf_s(szSql, DEL_BRANCH, branch.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1017,7 +1032,7 @@ BOOL CDatabase::UpdateBranch(std::string branch, const STBranch& stBranch)
|
|
|
stBranch.status.c_str(), stBranch.note.c_str(),branch.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1030,7 +1045,7 @@ BOOL CDatabase::QueryBranch(std::vector<STBranch>& vtBranch)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_BRANCH)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1039,7 +1054,7 @@ BOOL CDatabase::QueryBranch(std::vector<STBranch>& vtBranch)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryBranch error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1095,7 +1110,7 @@ BOOL CDatabase::InsertQBrand(const STQbrand& QBrand)
|
|
|
QBrand.note.c_str(), QBrand.status.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("InsertQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("InsertQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1110,7 +1125,7 @@ BOOL CDatabase::DeleteQBrand(std::string soc, std::string quarter, std::string b
|
|
|
_stprintf_s(szSql, DEL_QBRAND, soc.c_str(), brand.c_str(), quarter.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("DeleteQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("DeleteQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1130,11 +1145,11 @@ BOOL CDatabase::UpdateQBrand(std::string brand, STQbrand& QBrand)
|
|
|
QBrand.gtvs.c_str(), QBrand.note.c_str(),
|
|
|
QBrand.apps_cfg.c_str(), QBrand.fav_cfg.c_str(),
|
|
|
QBrand.local_cfg.c_str(), QBrand.ftpdir.c_str(),
|
|
|
- QBrand.codedir.c_str(), QBrand.pre_apk.c_str(), QBrand.status.c_str(),
|
|
|
+ QBrand.codedir.c_str(), QBrand.status.c_str(),
|
|
|
brand.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1152,11 +1167,11 @@ BOOL CDatabase::UpdateQBrand(std::string soc, std::string quarter, std::string b
|
|
|
QBrand.oemkey.c_str(), QBrand.approveddate.c_str(), QBrand.fingerprint.c_str(),
|
|
|
QBrand.builddate.c_str(), QBrand.gtvs.c_str(), QBrand.note.c_str(),
|
|
|
QBrand.apps_cfg.c_str(), QBrand.fav_cfg.c_str(), QBrand.local_cfg.c_str(),
|
|
|
- QBrand.ftpdir.c_str(), QBrand.codedir.c_str(), QBrand.pre_apk.c_str(), QBrand.status.c_str(),
|
|
|
+ QBrand.ftpdir.c_str(), QBrand.codedir.c_str(), QBrand.status.c_str(),
|
|
|
brand.c_str());
|
|
|
if (0 != mysql_query(m_pConn, szSql)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("UpdateQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("UpdateQBrand error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1169,7 +1184,7 @@ BOOL CDatabase::QueryQBrand(std::vector<STQbrand>& vtQBrand)
|
|
|
CHECKDB;
|
|
|
if (0 != mysql_query(m_pConn, QUERY_QBRAND)) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1178,7 +1193,7 @@ BOOL CDatabase::QueryQBrand(std::vector<STQbrand>& vtQBrand)
|
|
|
MYSQL_RES* pData = mysql_store_result(m_pConn);
|
|
|
if (pData == NULL) {
|
|
|
#ifdef _DEBUG
|
|
|
- TRACE1(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
+ _dprintf(_T("QueryServer error=%s\n"), m_pError ? m_pError : "");
|
|
|
#endif
|
|
|
return FALSE;
|
|
|
}
|
|
@@ -1221,8 +1236,7 @@ BOOL CDatabase::QueryQBrand(std::vector<STQbrand>& vtQBrand)
|
|
|
QBrand.local_cfg = row[14];
|
|
|
QBrand.ftpdir = row[15];
|
|
|
QBrand.codedir = row[16];
|
|
|
- QBrand.pre_apk = row[17];
|
|
|
- QBrand.status = row[18];
|
|
|
+ QBrand.status = row[17];
|
|
|
vtQBrand.push_back(QBrand);
|
|
|
}
|
|
|
|
|
@@ -1472,22 +1486,104 @@ void test(MYSQL* mysql)
|
|
|
|
|
|
void DBTest()
|
|
|
{
|
|
|
- CDatabase db;
|
|
|
- if (db.Init(_STR_HOST_, _STR_USER_, _STR_PASSWD_, _STR_DBNAME_))
|
|
|
+ if (CDatabase::GetInstance()->Init(_STR_HOST_, _STR_USER_, _STR_PASSWD_, _STR_DBNAME_))
|
|
|
{
|
|
|
- if (1) {
|
|
|
- db.InserSoc(_T("RT2851C"), _T("RealTealk"), _T("RTK台湾"));
|
|
|
- db.InserSoc(_T("RT2851M"), _T("RealTealk2"), _T("RTK台湾"));
|
|
|
+ if (0) {
|
|
|
+ CDatabase::GetInstance()->InserSoc(_T("RT2851C"), _T("RealTealk"), _T("RTK台湾"));
|
|
|
+ CDatabase::GetInstance()->InserSoc(_T("RT2851M"), _T("RealTealk2"), _T("RTK台湾"));
|
|
|
std::vector<STSOC> vtSOC;
|
|
|
- db.QuerySoc(vtSOC);
|
|
|
+ CDatabase::GetInstance()->QuerySoc(vtSOC);
|
|
|
|
|
|
for (std::vector<STSOC>::iterator it = vtSOC.begin(); it != vtSOC.end(); it++) {
|
|
|
- TRACE3(_T("name=%s, provider=%s, note=%s\n"), it->name.c_str(), it->provider.c_str(), it->note.c_str());
|
|
|
+ _dprintf(_T("name=%s, provider=%s, note=%s\n"), it->name.c_str(), it->provider.c_str(), it->note.c_str());
|
|
|
it->note = _T("xxxx1111xxx");
|
|
|
- db.UpdateSoc(it->name, *it);
|
|
|
+ CDatabase::GetInstance()->UpdateSoc(it->name, *it);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ if (0)
|
|
|
+ {
|
|
|
+ // 新增用户;
|
|
|
+ CDatabase::GetInstance()->InsertUser(_T("user"), _T("123456"), _T("0000-0000-0000-0000"));
|
|
|
+ CDatabase::GetInstance()->InsertUser(_T("user1"), _T("123456"), _T("0000-0000-0000-0000"));
|
|
|
+ CDatabase::GetInstance()->InsertUser(_T("user2"), _T("123456"), _T("0000-0000-0000-0000"));
|
|
|
+ CDatabase::GetInstance()->InsertUser(_T("user3"), _T("123456"), _T("0000-0000-0000-0000"));
|
|
|
+
|
|
|
+ // 更新用户;
|
|
|
+ STUser stUser;
|
|
|
+ stUser.user = _T("admin");
|
|
|
+ stUser.password = _T("96321");
|
|
|
+ stUser.permission = _T("0000-0000-1111-0011");
|
|
|
+ CDatabase::GetInstance()->UpdateUser(_T("user"), stUser);
|
|
|
+
|
|
|
+ // 查询用户;
|
|
|
+ std::vector<STUser> vtUser;
|
|
|
+ CDatabase::GetInstance()->QueryUser(vtUser);
|
|
|
+ for ( std::vector<STUser>::iterator it = vtUser.begin(); it != vtUser.end(); it++ )
|
|
|
+ {
|
|
|
+ _dprintf(_T("用户名:%s,用户密码:%s,用户权限:%s\n"), it->user.c_str(), it->password.c_str(), it->permission.c_str());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (1)
|
|
|
+ {
|
|
|
+ // 新增品牌;
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SCBC"), _T("SCBC"));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("MICROMAX"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ARTEL"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("PANASONIC"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("THOMSON"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SANYO"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("JVC"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("NOKIA"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("EAS-ELECTRIC"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("STRONG"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("LLOYD"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("CASPER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("CONDOR"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("DENKA"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ACONATIC"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("CG"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ORIENT"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("KALLEY"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("EVVOLI"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("COMPAQ"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("VISION-TECHNOLOGY"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SINGER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("HYUNDAI"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("RECCO"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("AMSTRAD"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("HITACHI"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ERITO"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("PIONEER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("PEL"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("MINISTER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SCHNEIDER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("INNOS"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("LUCOMS"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("XTREME"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ALHAFIDH"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ESSENTIELB"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("MASTER-G"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("KAPEK"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("BOTECH"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("HOME-ELITE"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SAMPO"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("TESLA"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("STREAM-SYSTEM"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("ZTRUST"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("AIWA"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("BOREAL"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("MYSTIC"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("POLAROID"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("SCEPTER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("BROOKSTONE"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("RAYLAN"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("PRIME-TECHNICS"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("CHALLENGER"), _T(""));
|
|
|
+ CDatabase::GetInstance()->InsertBrand(_T("TELEFUNKEN"), _T(""));
|
|
|
+ }
|
|
|
+
|
|
|
if (0) {
|
|
|
CFile file;
|
|
|
BYTE* pImage = NULL;
|
|
@@ -1500,7 +1596,7 @@ void DBTest()
|
|
|
file.Close();
|
|
|
}
|
|
|
|
|
|
- db.SetBinaryField("update brand set logo = ? where `name`='SCBC'", pImage, dwLength);
|
|
|
+ CDatabase::GetInstance()->SetBinaryField("update brand set logo = ? where `name`='SCBC'", pImage, dwLength);
|
|
|
if (pImage)
|
|
|
delete[]pImage;
|
|
|
pImage = NULL;
|
|
@@ -1511,7 +1607,7 @@ void DBTest()
|
|
|
{
|
|
|
BYTE* pImage = NULL;
|
|
|
DWORD dwLength = 0;
|
|
|
- db.GetBinaryField("select logo from brand where `name`='SCBC';", (void**)&pImage, dwLength);
|
|
|
+ CDatabase::GetInstance()->GetBinaryField("select logo from brand where `name`='SCBC';", (void**)&pImage, dwLength);
|
|
|
|
|
|
CFile file;
|
|
|
if (file.Open(_T("D:\\11.png"), CFile::modeCreate | CFile::modeWrite))
|