Mit CRecordset, CDatabase Tabelname (-infos) auslesen



  • Hallo Leute!

    Ich stelle eine Verbindung zu einer Datasource mit

    CDatabase pDatabase;
    BOOL bStatus = pDatabase.Open("ODBC;DSN=persondb;",
    NULL,
    NULL,
    ";DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=mypassword;UID=hans;");
    

    her. Dadurch wird bei gelungener Anbindung der Member CDatabase::m_hdbc gesetzt.

    Soweit so gut. Nun will ich die Tables dieser Datasource auslesen (Die Tabels selbst, also Name eines Tabes usw. nicht den Inhalt der Tabels, nicht die Felder!!!!!!). Dafür habe ich mir auch schon ein schöne Klasse (abgeleitet aus CRecordset) zusammengebastelt.

    Der Haken ist nur, um auf die Table-Infos zuzugreifen muß ich den Member CRecordset::m_hstmt setzen damit folgende Abfrage möglich ist

    AFX_SQL_ASYNC(this, (::SQLTables)(m_hstmt,
    (m_strQualifierParam.IsEmpty()? (UCHAR FAR *)NULL: (UCHAR FAR *)(const 	char*)m_strQualifierParam), SQL_NTS,
    (m_strOwnerParam.IsEmpty()? (UCHAR FAR *)NULL: (UCHAR FAR *)(const 	char*)m_strOwnerParam), SQL_NTS,
    (m_strNameParam.IsEmpty()? (UCHAR FAR *)NULL: (UCHAR FAR *)(const 	char*)m_strNameParam), SQL_NTS,
    (m_strTypeParam.IsEmpty()? (UCHAR FAR *)NULL: (UCHAR FAR *)(const char*)m_strTypeParam), SQL_NTS));
    

    Ist es nicht möglich über CDatabase::m_hdbc den Member CRecordset::m_hstmt zu setzen? Ich finde dbzgl. keine Funktion von CDatabase oder CRecordset.

    Wäre um Hilfe sehr Dankbar!


Anmelden zum Antworten