#include "TestDB.h"
Aller au code source de ce fichier.
Fonctions | |
void | ListTable (DataBase *pBase) |
Liste les tables. | |
void | GereTable (DataBaseTable *pTable) |
Gere une table. | |
void | ListEntry (DataBaseTable *pTable) |
Liste les entrées. | |
void | GereEntry (DataBaseTable *pTable, int iId) |
Gere une entrée. |
Définition dans le fichier TestDBFunc.cpp.
|
Gere une entrée (Datas).
Définition à la ligne 204 du fichier TestDBFunc.cpp. Références ConsoleClear(), DataBaseData::GetData(), DataBaseTable::GetData(), DataBaseTable::GetLabel(), DataBaseTable::GetName(), DataBaseTable::GetNbData(), DataBaseData::GetSize(), KeyGet(), et DataBaseData::SetData(). Référencé par GereTable(). 00205 { 00206 int Nb; 00207 char Name[1024]; 00208 char Buffer[1024]; 00209 00210 do 00211 { 00212 ConsoleClear(); 00213 00214 printf("--- Gestion d'une entree ---\n\n"); 00215 00216 printf("Nom de la table : %s\n", pTable->GetName()); 00217 printf("Id de l'entree : %i\n\n", iId); 00218 00219 for(Nb = 0; Nb < pTable->GetNbData(); Nb++) 00220 printf("%i \t %s\t %i : %s\n", Nb + 1, pTable->GetLabel(Nb), pTable->GetData(iId, Nb)->GetSize(), pTable->GetData(iId, Nb)->GetData()); 00221 00222 printf("\n\t Entrez l'id de la data a modifiee, 0 pour quitter\n\n: "); 00223 00224 scanf("%i", &Nb); 00225 00226 ConsoleClear(); 00227 00228 if(Nb && (Nb <= pTable->GetNbData())) 00229 { 00230 printf("Ancienne data \'%s\': \n", pTable->GetLabel(Nb - 1)); 00231 printf("%i : %s\n\n", pTable->GetData(iId, Nb - 1)->GetSize(), pTable->GetData(iId, Nb - 1)->GetData()); 00232 printf("\t Entrez la nouvelle data\n\n: "); 00233 00234 scanf("%s", Buffer); 00235 00236 if(pTable->GetData(iId, Nb - 1)->SetData(Buffer) == strlen(Buffer)) 00237 printf("\n\nData modifiee"); 00238 else 00239 printf("\n\nModification impossible"); 00240 00241 printf("\n\nPressez \'entree\' pour continuer\n"); 00242 KeyGet(); 00243 } 00244 } 00245 while(Nb); 00246 }
|
|
Gere une table (entrées et parametres).
Définition à la ligne 28 du fichier TestDBFunc.cpp. Références DataBaseTable::AddEntry(), DataBaseTable::AddLabel(), ConsoleClear(), DataBaseTable::DelEntry(), DataBaseTable::DelLabel(), GereEntry(), DataBaseTable::GetEntry(), DataBaseTable::GetLabel(), DataBaseTable::GetName(), DataBaseTable::GetNbData(), DataBaseTable::GetNbEntry(), KeyGet(), ListEntry(), et DataBaseTable::SetLabel(). 00029 { 00030 char Key; 00031 char Name[1024]; 00032 int Nb, i; 00033 00034 do 00035 { 00036 ConsoleClear(); 00037 00038 printf("--- Gestion d'une table ---\n\n"); 00039 printf("Nom de la table : %s\n", pTable->GetName()); 00040 printf("Nombre d'entrees : %i\n", pTable->GetNbEntry()); 00041 printf("Nombre de labels : %i\n\n", pTable->GetNbData()); 00042 printf("\t a : Ajouter une entree\n"); 00043 printf("\t d : Supprimer une entree\n"); 00044 printf("\t g : Gerer une entree\n\n"); 00045 printf("\t l : Ajouter un label\n"); 00046 printf("\t r : Renomer un label\n"); 00047 printf("\t s : Supprimer un label\n\n"); 00048 printf("\t q : Pour retourner au menu principal\n\n"); 00049 printf("\t Entrez le numero de l'action souhaiter : "); 00050 00051 fflush(stdin); 00052 Key = KeyGet(); 00053 00054 ConsoleClear(); 00055 00056 switch(Key) 00057 { 00058 case 'a' : 00059 printf("- Ajout d'une entree -\n\n"); 00060 00061 i = pTable->GetNbEntry(); 00062 pTable->AddEntry(); 00063 00064 if((i + 1) == pTable->GetNbEntry()) 00065 printf("Entree ajoutee"); 00066 else 00067 printf("Ajout impossible"); 00068 break; 00069 00070 case 'd' : 00071 printf("- Suppression d'une entree -\n\n"); 00072 00073 ListEntry(pTable); 00074 00075 printf("\t Entrez l'Id de l'entree a supprimer, 0 pour quitter\n\n: "); 00076 scanf("%i",&Nb); 00077 00078 if(pTable->GetEntry(Nb)) 00079 { 00080 i = pTable->GetNbEntry(); 00081 pTable->DelEntry(Nb); 00082 00083 if((i - 1) == pTable->GetNbEntry()) 00084 printf("\n\nEntree supprimee"); 00085 else 00086 printf("\n\nSuppression impossible"); 00087 } 00088 else 00089 printf("\n\nEntree non trouvee"); 00090 00091 break; 00092 00093 case 'g' : 00094 printf("- Gestion d'une entree -\n\n"); 00095 00096 ListEntry(pTable); 00097 00098 printf("\t Entrez l'Id de l'entree a gerer, 0 pour quitter\n\n: "); 00099 scanf("%i",&Nb); 00100 00101 if(Nb) 00102 GereEntry(pTable, Nb); 00103 else 00104 printf("\n\nEntree non trouvee"); 00105 00106 break; 00107 00108 case 'l' : 00109 printf("- Ajout d'un label -\n\n"); 00110 00111 for(i = 0; i < pTable->GetNbData(); i++) 00112 printf("%i\t : %s\n", i, pTable->GetLabel(i)); 00113 00114 printf("\t Entrez le nom, 0 pour quitter\n\n: "); 00115 scanf("%s", Name); 00116 00117 if(Name) 00118 { 00119 if(pTable->AddLabel(Name)) 00120 printf("\n\nLabel ajouter"); 00121 else 00122 printf("\n\nAjout impossible"); 00123 } 00124 00125 break; 00126 00127 case 'r' : 00128 printf("- Renomage d'un label -\n\n"); 00129 00130 for(i = 0; i < pTable->GetNbData(); i++) 00131 printf("%i\t : %s\n", i + 1, pTable->GetLabel(i)); 00132 00133 printf("\t Entrez l'id, 0 pour quitter\n\n: "); 00134 scanf("%i", &Nb); 00135 00136 if(Nb && (Nb <= pTable->GetNbData())) 00137 { 00138 printf("\t Entrez le nom, 0 pour quitter\n\n: "); 00139 scanf("%s", Name); 00140 00141 if(*Name != '0') 00142 { 00143 if(pTable->SetLabel(Nb - 1, Name)) 00144 printf("\n\nLabel renomer"); 00145 else 00146 printf("\n\nRenomage impossible"); 00147 } 00148 } 00149 00150 break; 00151 00152 case 's' : 00153 printf("- Suppression d'un label -\n\n"); 00154 00155 for(i = 0; i < pTable->GetNbData(); i++) 00156 printf("%i\t : %s\n", i + 1, pTable->GetLabel(i)); 00157 00158 printf("\t Entrez le nom, 0 pour quitter\n\n: "); 00159 scanf("%s", Name); 00160 00161 if(*Name != '0') 00162 { 00163 if(pTable->DelLabel(Name)) 00164 printf("\n\nLabel supprimer"); 00165 else 00166 printf("\n\nSuppression impossible"); 00167 } 00168 00169 break; 00170 } 00171 00172 if(Key != 'q') 00173 { 00174 printf("\n\nPressez \'entree\' pour continuer\n"); 00175 KeyGet(); 00176 } 00177 } 00178 while(Key != 'q'); 00179 }
|
|
Liste les entrée (ID et Datas)
Définition à la ligne 181 du fichier TestDBFunc.cpp. Références DataBaseData::GetData(), DataBaseTable::GetDataNo(), DataBaseTable::GetEntryNo(), DataBaseEntry::GetId(), DataBaseTable::GetLabel(), DataBaseTable::GetNbData(), DataBaseTable::GetNbEntry(), et DataBaseData::GetSize(). Référencé par GereTable(). 00182 { 00183 int i, j; 00184 00185 printf("Id\t | Size:Data (%i fois)\n\n\t", pTable->GetNbData()); 00186 00187 for(i = 0; i < pTable->GetNbData(); i++) 00188 printf(" | %s\t", pTable->GetLabel(i)); 00189 00190 printf("\n"); 00191 00192 for(i = 0; i < pTable->GetNbEntry(); i++) 00193 { 00194 printf("%i\t", pTable->GetEntryNo(i)->GetId()); 00195 00196 for(j = 0; j < pTable->GetNbData(); j++) 00197 printf(" | %i:%s\t", pTable->GetDataNo(i, j)->GetSize(), pTable->GetDataNo(i, j)->GetData()); 00198 00199 printf("\n"); 00200 } 00201 printf("\n"); 00202 }
|
|
Liste les tables (ID et NbEntry).
Définition à la ligne 14 du fichier TestDBFunc.cpp. Références DataBaseTable::GetId(), DataBaseTable::GetName(), DataBaseTable::GetNbData(), DataBaseTable::GetNbEntry(), DataBase::GetNbTable(), et DataBase::GetTableNo(). 00015 { 00016 printf("Id\t | Nom\t\t | Nb entree\t | Nb label\n"); 00017 00018 for(int i = 0; i < pBase->GetNbTable(); i++) 00019 { 00020 printf("%i\t | %s\t | %i\t\t | %i\n", pBase->GetTableNo(i)->GetId(), pBase->GetTableNo(i)->GetName(), 00021 pBase->GetTableNo(i)->GetNbEntry(), pBase->GetTableNo(i)->GetNbData() 00022 ); 00023 } 00024 00025 printf("\n"); 00026 }
|