Embedded SQL mit IBM DB2 unter Visual Studio .NET



  • hallo,

    ich wollte nur in einem sehr einfachem c programm ein connect zu einer
    datenbank aufbauen, vorerst ohne irgendwelchen abfragen oder sonstiges.

    aber leider gelingt mir das nicht 😞

    ich habe mit dem text editor folgende main.sqc datei erstellt:

    # include <stdio.h>
    # include <string.h>
    # include <sql.h>
    
    int main( int argc, char *argv[])
    {
    	// host variablen
    	exec sql begin declare section;
    		char userID[11];
    		char userPWD[11];
    	exec sql end declare section;
    
    	strcpy( userID,  "id");
    	strcpy( userPWD, "pwd");
    
    	// verbindungsaufbau
    	exec sql connect to sample user :userID using :userPWD;
    
    	// "fehlerbehamdlung" ...
    	if( SQLCODE != 0)
    		printf("verbindung :-(");
    	else
    		printf("verbindung :-)");
    
    	// disconnect anweisung
    	exec sql disconnect sample;
    }
    

    dann habe ich mit dem ibm db2 Befehlszeilenprozessor folgenden befehl ausgeführt:

    db2 prep c:\sql\main.sqc
    

    nun wurde mir eine main.c datei angelegt und dann habe ich ein neues, leeres
    win32 projekt als konsoleanwendung angelegt und die main.c in den
    arbeitsordner kopiert (mit der main.sqc) und dann die main.c datei dem projekt
    hinzugefügt und dann versucht diese datei bzw. das projekt zu compilieren,
    ging natürlich leider voll daneben...

    die main.c datei fängt so an:

    static char sqla_program_id[162] = 
    {
     42,0,65,68,65,75,65,73,77,65,73,78,32,32,32,32,70,65,56,122,
     79,76,76,86,48,49,49,49,49,32,50,32,8,0,69,82,72,65,78,32,
     32,32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
     0,0
    };
    
    #include "sqladef.h"
    

    und meine fehlermeldung heißt dann natürlich auch:
    fatal error C1083: Include-Datei kann nicht geöffnet werden: 'sqladef.h': No such file or directory

    diese header datei befindet sich bei mir in dem ordner:
    C:\Programme\IBM\SQLLIB\include
    und deise sqladef.h greift auf eine andere sql header datei zu:

    #include "sqlsystm.h"              /* System dependent defines  */
    

    wenn ich jetzt nun die sqladef.h in meinen arbeitsordner kopieren würde
    und diese dann dem projekt hinzufügen würde, würde ich dann ja wohl nicht
    gerade viel erreichen, außer dass ich immer wieder einen neuen fehler
    hervorrufen würde...

    und außerdem würde dann bei mir noch eine zusätzliche frage auftauchen:
    wie sieht es dann mit den *.lib dateien aus???
    aber wahrscheinlich sind noch ganz bestimmt einige andere fragen zu klären...

    ich weiß jetzt leider nicht wie ich weiter vorgehen muss/soll und entschuldige
    mich erst mal bei euch das meine frage so "groß" ausgefallen ist, sorry!


Anmelden zum Antworten