bool MultiViewerMain::DeleteTable() { if(m_eProgramState == eStateInit) return false; MultiViewerTableNameSelectDlg oTableNameSelectDlg(this); vector<string> vecTableNames = m_pSQLReader->GetTableNames(); unsigned int nTableIndex = 0, nCount = vecTableNames.size(); for(nTableIndex = 0 ; nTableIndex < nCount ; nTableIndex++) { std::string strTableName = vecTableNames[nTableIndex]; wxString wxstrTableName = SQLUtil::str2wxstr(strTableName); oTableNameSelectDlg.AddTableName(wxstrTableName); } oTableNameSelectDlg.SetDefault(); if( wxID_OK != oTableNameSelectDlg.ShowModal() ) return false; int nSelect = oTableNameSelectDlg.GetSelectTableNumber(); DeleteTable(nSelect); return true; }
QgraphicsItemTable::QgraphicsItemTable(QTableManager* visualRef,QDTable* table,qreal x, qreal y, qreal width, qreal height,Grabber* grab,QColor back, QColor select) :QGraphicsItemResizable(x,y,width, height, back, select) { VisRef = visualRef; TableData = table; SetMargin(-10,-10,15,15); menu = new QMenu(0); grabRefer = grab; // setto il grabber . QAction *AddAtr = menu->addAction("Nuovo attributo"); QAction *act = menu->addAction("Cancella la tabella "); connect(act,SIGNAL(triggered()),this,SLOT(DeleteTable())); connect(AddAtr,SIGNAL(triggered()),this,SLOT(NewAttribute())); }
void CHierarchicalDP::DeleteEmptyTables( Document &d ) { int numTable = (int)d.tables_t.size() - 1; // 空のテーブルを探す for(int t=0 ; t<numTable ; t++ ) { if( d.tables_t[t].GetDataNum() == 0 ) { DeleteTable( d , t ); break; } } }
/** @SYMTestCaseID SYSLIB-DBMS-CT-0579 @SYMTestCaseDesc Tests the database definition and enquiry functions @SYMTestPriority Medium @SYMTestActions Executes the index and bookmark tests @SYMTestExpectedResults Test must not fail @SYMREQ REQ0000 */ LOCAL_C void BigTestL() { test.Start(_L(" @SYMTestCaseID:SYSLIB-DBMS-CT-0579 Table ")); CreateDatabaseL(); BuildTable(KRecords); test(TheTable.Open(TheDatabase,KTableName)==KErrNone); TheTable.EndL(); IterateL(TheTable.EPrevious); TheTable.BeginningL(); IterateL(TheTable.ENext); TheTable.EndL(); IterateL(TheTable.EPrevious); TheTable.Close(); test.Next(_L("Int32 Index")); CDbKey *key=CDbKey::NewLC(); key->AddL(KColumnInt); key->MakeUnique(); TestIndex(KIndexInt,*key); test.Next(_L("Text[200] Index")); key->Clear(); key->AddL(KColumnText); key->MakeUnique(); TestIndex(KIndexText,*key); test.Next(_L("Bookmarks")); TestBookmark(); test.Next(_L("Int32 Index")); #ifndef __TOOLS2__ TheTimer.Start(_L("drop")); #endif test(TheDatabase.DropIndex(KIndexInt,KTableName)==KErrNone); #ifndef __TOOLS2__ TheTimer.Stop(); #endif key->Clear(); key->AddL(KColumnInt); key->MakeUnique(); TestIndex(KIndexInt,*key); CleanupStack::PopAndDestroy(); test.Next(_L("Break & Recover")); BreakIndex(); Recover(); test.Next(_L("Drop Indexes")); DropIndexes(); test.Next(_L("Delete all records")); DeleteTable(); CloseDatabaseL(); test.End(); }
int setoption(char *input, ENGINE_STATE *stat) { int val = 0; if (sscanf(input, "setoption name Hash value %i", &val)) { DeleteTable(&hash_table); DeletePawnTable(&pawn_table); if (AllocPawnTable(&pawn_table, 0.2*val) == 0) return 0; if (AllocTable(&hash_table, 0.8*val) == 0) return 0; ClearHashTable(&hash_table); ClearPawnTable(&pawn_table); } else if (sscanf(input, "setoption name Contempt value %i", &val)) { stat->control->contempt = val; printf("contempt: %i\n", stat->control->contempt); } return 1; }
int main(int argc, char *argv[]) { BOARD main_board; InitBoard(&main_board); ReadFEN(STARTPOS, &main_board); CONTROL engine_control; engine_control.stop = 1; ENGINE_STATE engine = {&main_board, &engine_control}; if (AllocTable(&hash_table, 0.8*TABLESIZE) == 0) { printf("Not enough memory\n"); return 1; } ClearHashTable(&hash_table); if (AllocPawnTable(&pawn_table, 0.2*TABLESIZE) == 0) { printf("Not enough memory\n"); return 1; } ClearPawnTable(&pawn_table); setvbuf(stdin, 0, _IONBF, 0); setvbuf(stdout, 0, _IONBF, 0); fflush(NULL); char input[BUFFER]; while (fgets(input, BUFFER, stdin)) { if (!Command(input, &engine)) { break; } memset(input, 0, BUFFER); } DeleteTable(&hash_table); DeletePawnTable(&pawn_table); return 0; }
void main() { int i, size; HashTable *dict; // ispunja hash tablice razlicitih velicina svim rijecima iz datoteke for(size = 256; size < (1<<18); size *= 2) { float st, et; dict = NewTable(size); st = clock(); fillTable(dict); // PrintTable(dict); et = clock(); printf("Size = %d, load factor = %f, time = %f\n", dict->size, (float)dict->load / dict->size, (et-st)/CLOCKS_PER_SEC); DeleteTable(dict); } }
//功能读入窗口,中枢函数,返回false的时候读入结束 bool userDatabase::userRead(){ cout << endl << username << ">" << endl; switch(mySql.read()){ case 0: return false; case 1: if(!CreateTable()) cout << "[Error] Create table error!" << endl; break; case 2: if(!CreateView()) cout << "[Error] Create view error!" << endl; break; case 3: if(!CreateIndex()) cout << "[Error] Create index error!" << endl; break; case 10: if(!InsertTable()) cout << "[Error] Insert error!" << endl; break; case 11: if(!SelectTable()) cout << "[Error] Select error!" << endl; break; case 12: if(!DeleteTable()) cout << "[Error] Drop table error!" << endl; break; case 13: if(!UpdateTable()) cout << "[Error] Update table error!" << endl; break; case 14: if(!DeleteData()) cout << "[Error] Delete data error!" << endl; break; case 15: if(!DeleteView()) cout << "[Error] Delete view error!" << endl; break; case 16: if(!GrantToUser()) cout << "[Error] Grant to user error!" << endl; break; case 20: readme.createHelp(); break; case 21: readme.selectHelp(); break; case 22: readme.insertHelp(); break; case 23: readme.dropHelp(); break; case 24: readme.updateHelp(); break; case 25: InputAllTable(); InputAllView(); InputAllIndex(); break; case 26: InputAllTable(); break; case 27: InputAllView(); break; case 28: InputAllIndex(); break; default : printf("[Error] SQL input error!\n"); break; } return true; };
void MultiViewerMain::OnTableDelete( wxCommandEvent& ) { Trace(emTraceProgramProcess, "UI Table Delete"); DeleteTable(); }
/* * @ brief: 台号信息处理函数 * @ param: hwnd [in] 窗口句柄 * @ param: msg [in] 消息类型 **/ BOOL CALLBACK ChildTableInfoProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { case WM_INITDIALOG: { CListView table_list(hwnd, IDC_L_TABLE_INFO); table_list.SetSelectAndGrid(LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES); table_list.InsertColumn(1,80,"房间名称"); table_list.InsertColumn(2,100,"台 号"); table_list.InsertColumn(2,60,"人 数"); try { InitFloorName(hwnd, IDC_TABLE_FLOOR_COMBO);//初始化左边第一个“楼层”下拉列表 InitFloorName(hwnd, IDC_C_FLOOR_NAME);//初始化游标第二个“楼层”下拉列表 CComboBox floor_combo(hwnd, IDC_TABLE_FLOOR_COMBO); std::string floor_name; floor_combo.GetComboBoxText(floor_name); InitTableList(hwnd, IDC_L_TABLE_INFO, floor_name.c_str(), 0); InitRoomCombo(hwnd,floor_name.c_str(),IDC_C_ROOM_NAME);//根据楼层名,初始化房间下拉列表 } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理"), MB_ICONERROR); return FALSE; } return TRUE; } case WM_NOTIFY: { switch(LOWORD(wParam)) { case IDC_L_TABLE_INFO: { if (((LPNMHDR)lParam)->code == NM_CLICK){ // 点击列表中的一项 int index = -1; CEdit num, no; CComboBox room_name, floor_name; CListView table_list; table_list.Initialization(hwnd, IDC_L_TABLE_INFO); index = table_list.GetSelectionMark(); if (-1 == index) { MessageBox(hwnd, TEXT("请先在左侧选择一个台号!"), TEXT("基础信息管理"), MB_ICONINFORMATION); break; } room_name.Initialization(hwnd, IDC_C_ROOM_NAME); no.Initialization(hwnd, IDC_E_TABLE_NO); num.Initialization(hwnd, IDC_E_TABLE_NUM); CComboBox combo(hwnd, IDC_TABLE_FLOOR_COMBO); std::string name; combo.GetComboBoxText(name); floor_name.Initialization(hwnd, IDC_C_FLOOR_NAME); floor_name.DeleteAllString(); InitFloorName(hwnd,IDC_C_FLOOR_NAME); floor_name.SetCurSel(floor_name.FindString(name.c_str())); InitRoomCombo(hwnd,name.c_str(),IDC_C_ROOM_NAME); room_name.SetCurSel(room_name.FindString(table_list.GetItem(index, 0).c_str())); no.SetEditText(table_list.GetItem(index, 1).c_str()); num.SetEditText(table_list.GetItem(index, 2).c_str()); } break; } } return TRUE; } case WM_COMMAND: { switch (LOWORD(wParam)) { case IDC_B_ADD_TABLE: { try { if(AddTable(hwnd)) { MessageBox(hwnd, TEXT("添加台号信息成功"), TEXT("基础信息管理 "), MB_ICONINFORMATION); } } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理 "), MB_ICONERROR); return FALSE; } break; } case IDC_B_DISHPATCH_TABLE: { try { if (UpdateTable(hwnd)) { MessageBox(hwnd, TEXT("修改台号信息成功"), TEXT("基础信息管理"), MB_OK); } } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理"), MB_ICONERROR); } break; } case IDC_B_DELETE_TABLE: { try { if (DeleteTable(hwnd)) { MessageBox(hwnd, TEXT("删除台号信息成功"), TEXT("基础信息管理"), MB_OK); } } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理"), MB_ICONERROR); } break; } case IDC_TABLE_FLOOR_COMBO://点击左边第一个”楼层“下拉列表 { if (HIWORD(wParam) == CBN_SELCHANGE) { try { CComboBox combo(hwnd, IDC_TABLE_FLOOR_COMBO); std::string floor_name; combo.GetComboBoxText(floor_name); CComboBox room(hwnd, IDC_C_ROOM_NAME); room.DeleteAllString();//清空“房间”下拉列表,然后在插入新的数据 InitTableList(hwnd, IDC_L_TABLE_INFO, floor_name.c_str(), 0); } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理"), MB_ICONERROR); return FALSE; } CEdit edit; // 清空右侧编辑框数据 edit.Initialization(hwnd, IDC_E_TABLE_NO); edit.Empty(); edit.Initialization(hwnd, IDC_E_TABLE_NUM); edit.Empty(); } break; } case IDC_C_FLOOR_NAME://点击第二个“楼层”下拉列表 { if (HIWORD(wParam) == CBN_SELCHANGE) { try { CComboBox combo(hwnd, IDC_C_FLOOR_NAME); std::string floor_name_str; combo.GetComboBoxText(floor_name_str); CComboBox room_name(hwnd, IDC_C_ROOM_NAME); RoomInfo room_info; room_info.GetRoomName(floor_name_str.c_str()); // 获取楼层下的房间名称记录集 room_name.DeleteAllString(); while (!room_info.IsEOF()) { room_name.AddString(room_info.room_name()); } } catch (Err &err) { MessageBox(hwnd, err.what(), TEXT("基础信息管理"), MB_ICONERROR); return FALSE; } } break; } case IDC_B_TABLE_CANCLE: { EndDialog(hwnd,0); break; } } return TRUE; } case WM_CLOSE: { EndDialog(hwnd,0); return TRUE; } } return FALSE; }
VOID DeinitLibrary() { DeleteTable(CurrentTable); DeleteTable(ReadonlyNodes); DeletePTableArray(&TableStorage); }