DB registrieren



  • Hi @ all

    Hab ein ziehmlich dummes Problem.

    Ich versuche mit

    SQLConfigDataSource(NULL,
        ODBC_ADD_DSN,
        "Microsoft Access-Treiber (*.mdb)",
        "DSN=mydsn\0"
        "Description=BLABLA\0"
        "FileType=Access\0"
        "DBQ="      // Das Problem !!
        "MaxScanRows=100\0"
         );
    

    zu registrieren. In die DBQ- Zeile will ich einen string einfügen.

    Wie mach ich das ???

    Thx

    [ Dieser Beitrag wurde am 11.02.2003 um 14:51 Uhr von goochie editiert. ]



  • Nimm zwei Strings. In einen schreibst du "DBQ=" und in den anderen das was du willst. Und dann verbinde die beiden.



  • Hi

    SQLConfigDataSource(NULL,
            ODBC_ADD_DSN,
                "Microsoft Access-Treiber (*.mdb)",
            "DSN=mydsn\0"
            "Description=\0"
            "FileType=Access\0"
            ""+ dbqstr +"MaxScanRows=100\0"
            );
    

    Meinst du so ???
    Funzt leider auch nicht !!!!

    Mehr Vorschläge???

    Thx

    [ Dieser Beitrag wurde am 11.02.2003 um 15:19 Uhr von goochie editiert. ]



  • Nein, hier ein Beispiel mit CStrings:
    CString str.Format("DBQ=%s", "Irgendetwas");
    und den kannst du mit einem Cast[(LPSTR)(LPCSTR)] dann übergeben.



  • Hi

    Falls es noch jemanden interessiert.

    Das Problem liegt anscheinend an \0 Terminierung.

    Lösung: Die "\0" durch irgendetwas ersetzen. (hier ";")

    SQLConfigDataSource(NULL,
            ODBC_ADD_DSN,
            "Microsoft Access-Treiber (*.mdb)",
            "DSN=MyDSN;"
            "Description=Deine DB;"
            "FileType=Access;"
            "DBQ=" + dbqstr +";"  /// Hier derPfad (nicht "\\" sondern "\")
            "MaxScanRows=100;"
             );
    

    Gruß


Anmelden zum Antworten