Hallo Leute, bin neu hier und hoffe ich stelle die richtigen Fragen. Ich muss eine Datenbank anlegen, der code befindet sich unten aber Borland meldet unz zeigt mir das es keine Datenbank exitiert und ich frage mich warum? Vieleicht kann mir ja jeman hier einen Tipp geben, danke.
Teile des Codes:
Das steht im Hauptprogramm, Gui:
AnsiString dir = "e:\\_ZE\\1_E\\Test";
einUser->setDBDirectory(dir);
einUser->setDBName();
einUser->InitDB();
Das steht in der Klasse:
//------------------------------------------------------------------------------
void CUser::setDBDirectory(const AnsiString _uDBDirectory)
{
this->uDBDirectory = _uDBDirectory;
CreateDirectory(uDBDirectory.c_str(),0); // das wird später ausgelagert!!!
//ShowMessage("directory '"+uDBDirectory+"' created");
}
//------------------------------------------------------------------------------
void CUser::setDBName(void)
{
this->uDBName = this->uName + ".db";
//Fm_anmelden->Table1->DatabaseName = "e:\\_ZE\\1_E\\Test";
}
//------------------------------------------------------------------------------
void CUser::InitDB(void)
{
Fm_anmelden->Table1->DatabaseName = this->uDBName;
Fm_anmelden->Table1->TableName = "e:\\_ZE\\1_E\\Test";
this->CreateTableDaten(Fm_anmelden->Table1); // Tabelle erzeugt
}
//------------------------------------------------------------------------------
void CUser::CreateTableDaten(TTable* _tDaten)
{
this->uTable = _tDaten;
this->uTableType = ttDefault;
_tDaten->Active = false;
this->NewDataField(tName, ftString);
this->NewDataField(tPasswort, ftString);
//this->FillTableDaten(Fm_anmelden->Table1);
}
//------------------------------------------------------------------------------
TFieldDef* CUser::NewDataField(String DataName, TFieldType DataType)
{
TFieldDef* pNewDataField = uTable->FieldDefs->AddFieldDef();
pNewDataField->Name = DataName;
pNewDataField->DataType = DataType;
return pNewDataField;
}
//------------------------------------------------------------------------------
void CUser::FillTableDaten(TTable* _tDaten)
{
_tDaten->Active = true;
_tDaten->Append();
_tDaten->FieldValues[tName] = uName;
_tDaten->FieldValues[tPasswort] = uPassword;
_tDaten->Post();
}
//------------------------------------------------------------------------------
Teile des Codes:
Das steht im Hauptprogramm, Gui:
AnsiString dir = "e:\\_ZE\\1_E\\Test";
einUser->setDBDirectory(dir);
einUser->setDBName();
einUser->InitDB();
Das steht in der Klasse:
//------------------------------------------------------------------------------
void CUser::setDBDirectory(const AnsiString _uDBDirectory)
{
this->uDBDirectory = _uDBDirectory;
CreateDirectory(uDBDirectory.c_str(),0); // das wird später ausgelagert!!!
//ShowMessage("directory '"+uDBDirectory+"' created");
}
//------------------------------------------------------------------------------
void CUser::setDBName(void)
{
this->uDBName = this->uName + ".db";
//Fm_anmelden->Table1->DatabaseName = "e:\\_ZE\\1_E\\Test";
}
//------------------------------------------------------------------------------
void CUser::InitDB(void)
{
Fm_anmelden->Table1->DatabaseName = this->uDBName;
Fm_anmelden->Table1->TableName = "e:\\_ZE\\1_E\\Test";
this->CreateTableDaten(Fm_anmelden->Table1); // Tabelle erzeugt
}
//------------------------------------------------------------------------------
void CUser::CreateTableDaten(TTable* _tDaten)
{
this->uTable = _tDaten;
this->uTableType = ttDefault;
_tDaten->Active = false;
this->NewDataField(tName, ftString);
this->NewDataField(tPasswort, ftString);
//this->FillTableDaten(Fm_anmelden->Table1);
}
//------------------------------------------------------------------------------
TFieldDef* CUser::NewDataField(String DataName, TFieldType DataType)
{
TFieldDef* pNewDataField = uTable->FieldDefs->AddFieldDef();
pNewDataField->Name = DataName;
pNewDataField->DataType = DataType;
return pNewDataField;
}
//------------------------------------------------------------------------------
void CUser::FillTableDaten(TTable* _tDaten)
{
_tDaten->Active = true;
_tDaten->Append();
_tDaten->FieldValues[tName] = uName;
_tDaten->FieldValues[tPasswort] = uPassword;
_tDaten->Post();
}
//------------------------------------------------------------------------------
Comment