bool LoadPlayerDataContext::OnSQLExecute() { //ScopeElapsedCheck __scope_elapsed_check__( __FUNCSIG__ ); TRACE_THIS; TRACE_PERF; DBHelper dbHelper; dbHelper.BindParamInt(&mPlayerId); dbHelper.BindResultColumnText(mPlayerName, MAX_NAME_LEN); dbHelper.BindResultColumnFloat(&mPosX); dbHelper.BindResultColumnFloat(&mPosY); dbHelper.BindResultColumnFloat(&mPosZ); dbHelper.BindResultColumnBool(&mIsValid); dbHelper.BindResultColumnText(mComment, MAX_COMMENT_LEN); if (dbHelper.Execute(SQL_LoadPlayer)) { if (dbHelper.FetchRow()) { return true; } } return false; }
//todo: CreatePlayerDataContext 구현 bool CreatePlayerDataContext::OnSQLExecute() { DBHelper dbHelper; /* dbHelper.BindParamText( mPlayerName ); dbHelper.BindResultColumnInt( &mPlayerId ); if ( dbHelper.Execute( SQL_CreatePlayer ) ) { if ( dbHelper.FetchRow() ) { return true; } } */ dbHelper.BindParamText(mPlayerName); dbHelper.BindResultColumnInt( &mPlayerId ); if (dbHelper.Execute(SQL_CreatePlayer)) { if (dbHelper.FetchRow()) { /// 적용받은 행이 하나도 없다면, 실패라고 간주하자 return mPlayerId != -1; } } return false; }
//todo: DeletePlayerDataContext 구현 bool DeletePlayerDataContext::OnSQLExecute() { DBHelper dbHelper; /* dbHelper.BindParamInt( &mPlayerId ); if ( dbHelper.Execute( SQL_DeletePlayer ) ) { if ( dbHelper.FetchRow() ) { return true; } } */ int result = 0; dbHelper.BindParamInt(&mPlayerId); dbHelper.BindResultColumnInt(&result); if (dbHelper.Execute(SQL_DeletePlayer)) { if (dbHelper.FetchRow()) { /// 적용받은 행이 하나도 없다면, 실패라고 간주하자 return result != 0; } } return false; }
//todo: CreatePlayerDataContext 구현 bool CreatePlayerDataContext::OnSQLExecute() { DBHelper dbHelper; dbHelper.BindParamText( mPlayerName ); if ( dbHelper.Execute( SQL_CreatePlayer ) ) { if (dbHelper.FetchRow()) { return true; } } return false; }
//todo: DeletePlayerDataContext 구현 bool DeletePlayerDataContext::OnSQLExecute() { DBHelper dbHelper; dbHelper.BindParamInt( &mPlayerId ); if ( dbHelper.Execute( SQL_DeletePlayer ) ) { if ( dbHelper.FetchRow() ) { return true; } } return false; }
bool UpdatePlayerCommentContext::OnSQLExecute() { DBHelper dbHelper; int result = 0; dbHelper.BindParamInt(&mPlayerId); dbHelper.BindParamText(mComment); dbHelper.BindResultColumnInt(&result); if (dbHelper.Execute(SQL_UpdatePlayerComment)) { if (dbHelper.FetchRow()) { return result != 0; } } return false; }
bool UpdatePlayerPositionContext::OnSQLExecute() { DBHelper dbHelper; int result = 0; dbHelper.BindParamInt(&mPlayerId); dbHelper.BindParamFloat(&mPosX); dbHelper.BindParamFloat(&mPosY); dbHelper.BindParamFloat(&mPosZ); dbHelper.BindResultColumnInt(&result); if (dbHelper.Execute(SQL_UpdatePlayerPosition)) { if (dbHelper.FetchRow()) { return result != 0; } } return false; }
bool LoadPlayerDataContext::OnSQLExecute() { DBHelper dbHelper; dbHelper.BindParamInt(&mPlayerId); dbHelper.BindResultColumnText(mPlayerName, MAX_NAME_LEN); dbHelper.BindResultColumnFloat(&mPosX); dbHelper.BindResultColumnFloat(&mPosY); dbHelper.BindResultColumnFloat(&mPosZ); dbHelper.BindResultColumnBool(&mIsValid); dbHelper.BindResultColumnText(mComment, MAX_COMMENT_LEN); if (dbHelper.Execute(SQL_LoadPlayer)) { if (dbHelper.FetchRow()) { return true; } } return false; }
/// 테스트용 임시 void DbTestFunc() { { DBHelper dbHelper; dbHelper.BindParamText(L"DbTestPlayer"); if (dbHelper.Execute(SQL_CreatePlayer)) { if (dbHelper.FetchRow()) { printf("ok"); } } } { DBHelper dbHelper; int uid = 100; float x = 2301.34f; float y = 56000.78f; float z = 990002.32f; dbHelper.BindParamInt(&uid); dbHelper.BindParamFloat(&x); dbHelper.BindParamFloat(&y); dbHelper.BindParamFloat(&z); if (dbHelper.Execute(SQL_UpdatePlayerPosition)) { if (dbHelper.FetchRow()) { printf("ok"); } } } { DBHelper dbHelper; int uid = 100; dbHelper.BindParamInt(&uid); dbHelper.BindParamText(L"Update된 코멘트..입니다."); if (dbHelper.Execute(SQL_UpdatePlayerComment)) { if (dbHelper.FetchRow()) { printf("ok"); } } } { DBHelper dbHelper; int uid = 100; bool v = true; dbHelper.BindParamInt(&uid); dbHelper.BindParamBool(&v); if (dbHelper.Execute(SQL_UpdatePlayerValid)) { if (dbHelper.FetchRow()) { printf("ok"); } } } { DBHelper dbHelper; int uid = 100; dbHelper.BindParamInt(&uid); wchar_t name[32]; float x = 0; float y = 0; float z = 0; bool valid = false; wchar_t comment[256]; dbHelper.BindResultColumnText(name, 32); dbHelper.BindResultColumnFloat(&x); dbHelper.BindResultColumnFloat(&y); dbHelper.BindResultColumnFloat(&z); dbHelper.BindResultColumnBool(&valid); dbHelper.BindResultColumnText(comment, 256); if (dbHelper.Execute(SQL_LoadPlayer)) { if (dbHelper.FetchRow()) { printf("\n%ls %f %f %f %d %ls\n", name, x, y, z, valid, comment); } } } { DBHelper dbHelper; int uid = 100; dbHelper.BindParamInt(&uid); if (dbHelper.Execute(SQL_DeletePlayer)) { if (dbHelper.FetchRow()) { printf("ok"); } } } }