Develop and Download Open Source Software

Browse CVS Repository

Diff of /xoonips/AL/commonal.cc

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.70 by tani, Wed Feb 23 06:39:28 2005 UTC revision 1.71 by aga4096, Thu Feb 24 11:32:55 2005 UTC
# Line 2  Line 2 
2   *   *
3   * $Revision$   * $Revision$
4   * $Log$   * $Log$
5     * Revision 1.71  2005/02/24 11:32:55  aga4096
6     * ・updateGroupでグループインデックスの名前を変更するよう修正.
7     *
8   * Revision 1.70  2005/02/23 06:39:28  tani   * Revision 1.70  2005/02/23 06:39:28  tani
9   * isGuestEnabled: 設定を読み込むテーブルを変更.   * isGuestEnabled: 設定を読み込むテーブルを変更.
10   *   *
# Line 2739  result_t updateGroup( sessionid_t sid, c Line 2742  result_t updateGroup( sessionid_t sid, c
2742          setLastErrorString( s.c_str( ) );          setLastErrorString( s.c_str( ) );
2743          ret = RES_ERROR;          ret = RES_ERROR;
2744      }      }
2745        
2746        if( ret == RES_OK ){
2747            // updateすべきindex_idを得る
2748            sql = "SELECT group_index_id from " + dbprefix + "_xnpaccount_groups as tg "
2749              " left join " + dbprefix + "_xnpaccount_item_basic as ti on tg.group_index_id = ti.item_id "
2750              " left join " + dbprefix + "_xnpaccount_index as tx on ti.item_id = tx.index_id "
2751              " where tg.gid=" +  unsignedIntToString(group->getGID()) +
2752              "  and ti.item_type_id=" + unsignedIntToString(item::ITID_INDEX) +
2753              "  and tx.parent_index_id=" + unsignedIntToString(item::IID_ROOT);
2754            indexid_t xid;
2755            ret = queryGetUnsignedInt( "updateGroup",  sql, &xid );
2756            
2757            if ( ret == RES_OK ){
2758                if( ( sqlcode = SQLAllocHandle( SQL_HANDLE_STMT, hdbc, &hstmt ) ) == SQL_SUCCESS ) {
2759                    sql = "UPDATE " + dbprefix + "_xnpaccount_item_basic set title=? "
2760                        "WHERE item_id=" + unsignedIntToString(xid);
2761                    sqlcode = SQLPrepare(hstmt, (SQLCHAR*)sql.c_str(), SQL_NTS);
2762                    if( sqlcode == SQL_SUCCESS || sqlcode == SQL_SUCCESS_WITH_INFO ){
2763                        cbGname = SQL_NTS;
2764                        SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_LONGVARCHAR, XNP_GROUP_GNAME_LEN, 0, gname, 0, &cbGname );
2765                        strncpy2( (char*)gname, group -> getGname( ), XNP_GROUP_GNAME_LEN );
2766                        if( ( sqlcode = SQLExecute( hstmt ) ) == SQL_SUCCESS ){
2767                            SQLLEN count = 0;
2768                            if( ( sqlcode = SQLRowCount( hstmt, &count ) ) == SQL_SUCCESS && count > 0 ){
2769                                ret = RES_OK;
2770                            }else{
2771                                string s( "SQLRowCount in updateGroup sql=" );
2772                                s += string( sql );
2773                                setLastErrorString( s.c_str( ) );
2774                                ret = RES_DB_QUERY_ERROR;
2775                            }
2776                        }else{
2777                            string s( "SQLExecute in updateGroup " );
2778                            s += odbcDiagString( SQL_HANDLE_STMT, hstmt, sqlcode );
2779                            setLastErrorString( s.c_str( ) );
2780                            ret = RES_DB_QUERY_ERROR;
2781                        }
2782                    }else{
2783                        setLastErrorString( "SQLPrepare in updateGroup sql=" );
2784                        ret = RES_ERROR;
2785                    }
2786                    SQLFreeHandle( SQL_HANDLE_STMT, hstmt );
2787                }else{
2788                    string s( "SQLAllocHandle(SQL_HANDLE_STMT,...) in updateGroup" );
2789                    s += odbcDiagString( SQL_HANDLE_DBC, hdbc, sqlcode );
2790                    setLastErrorString( s.c_str( ) );
2791                    ret = RES_ERROR;
2792                }
2793            }
2794        }
2795      return RES_OK;      return RES_OK;
2796  }  }
2797    

Legend:
Removed from v.1.70  
changed lines
  Added in v.1.71

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26