Y
Hallo Leute !
Meine programm erstellt ein Datenbank mit Tabellen aus dem CFileDialog.
Es klappt ganz gut auch beim Aufruf von CreatRelation gibt der Compiler keine Fehler aus .Aber beim ausführen gibt Windows Fehlermeldung aus "Der Datenbakmodul kann die Datei nicht finden "
Hier ist der Code
[cpp]
CFileDialog cfd(FALSE , "mdb" , ".mdb", OFN_HIDEREADONLY , "Access file(.mdb)|.mdb|alle Files(.)|.*|" , NULL);
if(cfd.DoModal() == IDOK )
{
CString pfad;
pfad = cfd.GetPathName();
CDaoDatabase* m_daoDatabase = new CDaoDatabase();
m_daoDatabase->Create(pfad,dbLangGeneral,0);
m_daoDatabase->Execute ("Create Table Anlagenbezeichnung(Anlagenbezeichnung guid);");
m_daoDatabase->Execute ("Create Table Aufnahmetabelle(ID Integer,Anlagenbezeichnung guid,Element Integer,Zustand Integer,Störursache Integer,Uhrzeitanfang Integer,Urzeitende Integer,Variante Integer);");
m_daoDatabase->Execute ("Create Table Aufnahmezeitraum(ID Integer,Anlagenbezeichnung Integer,Aufnahmebegin Integer,Aufnahmeende Integer);");
m_daoDatabase->Execute ("Create Table Handzustände(ID Integer,Zustand Integer,Anwahl Integer);");
m_daoDatabase->Execute ("Create Table Pufferzustände(ID Integer,Zustand Integer,Anwahl Integer);");
m_daoDatabase->Execute ("Create Table Stationszustände(ID Integer,Zustand Integer,Anwahl Integer);");
m_daoDatabase->Execute ("Create Table Störursachentabelle(ID Integer,Anlagenbezeichnung Integer,Elementname Integer,Zustand Integer,Störursache Integer);");
m_daoDatabase->Execute ("Create Table Strukturtabelle(ID Integer,Anlagenbezeichnung Integer,Elementename Integer,Nummer Integer,Typ Integer);");
m_daoDatabase->Execute ("Create Table Variantentabelle(ID Integer,Anlagenbezeichnung Integer,Variante Integer);");
m_daoDatabase->CreateRelation(pfad,"Anlagenbezeichnung","Aufnahmetabelle",dbRelationUnique,"Anlagenbezeichnung","Anlagenbezeichnung");
delete m_daoDatabase;
UpdateData(TRUE);
}