Mit einem SQL Read Aufruf 2 Abfragen erstellen?

Gizzl0r

Level-1
Beiträge
142
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Tag,
besteht die Möglichkeit mit einem SQL Aufruf, 2 DB Abfragen zu senden? Ich will wenn möglich mit einem Abruf 2 Abfragen absetzen.

Oder gibt es hierfür einen SQL Befehl mit dem ich meine beiden Abfragen in eine zusammen fügen kann?!


fbFormatString(
pFormatString := ADR(sFormat0),
arg1:= F_STRING(GL_VAR.f_nummer_links),
pDstString := ADR(sCmd), nDstSize := SIZEOF(sCmd), bError => bError, nErrID => nErrID );
fbFormatString1(
pFormatString := ADR(sFormat1),
arg1:= F_STRING(GL_VAR.mat_id_links),
pDstString := ADR(sCmd), nDstSize := SIZEOF(sCmd), bError => bError, nErrID => nErrID );
CASE step_lesen OF
0:;

IF GL_VAR.f_nummer_korrekt_trig_links
THEN
step_lesen:=1;

END_IF

1:// Connect to database

GL_VAR.f_nummer_korrekt_trig_links :=FALSE;
IF fbSqlDatabase.Connect(1) THEN
IF fbSqlDatabase.bError THEN
step_lesen := 1;
ELSE
step_lesen := step_lesen+1;
END_IF
END_IF

2: // Create a command reference
IF fbSqlDatabase.CreateCmd(ADR(fbSqlCommand)) THEN

IF fbSqlDatabase.bError THEN

step_lesen := 255;

ELSE

fbFormatString( //'select code from _pruefid_map where id_nummer =$'%S$'';

pFormatString := ADR(sFormat0),

pDstString := ADR(sCmd), nDstSize := SIZEOF(sCmd), bError => bError, nErrID => nErrID );





fbFormatString1( // 'select count(*) as Anzahl from _idmap where _id = $'%S$'';

pFormatString := ADR(sFormat1),

pDstString := ADR(sCmd), nDstSize := SIZEOF(sCmd), bError => bError, nErrID => nErrID );

step_lesen := step_lesen +1;

END_IF

END_IF


3: //Execute SELECT Statement

IF fbSQLCommand.ExecuteDataReturn(ADR(sCmd), SIZEOF(sCmd), ADR(fbSqlResult)) THEN
IF fbSQLCommand.bError THEN
step_lesen := 255;
ELSE

step_lesen := step_lesen+1;
END_IF
END_IF

4://Read Results
IF fbSqlResult.Read(nStartIndex:= 0
,nRecordCount:= 1
,pData:= ADR(queryResults)
,cbData:= SIZEOF(queryResults)
,bWithVerifying:= FALSE
,bDataRelease:= TRUE) THEN
IF fbSqlResult.bError THEN
step_lesen := 255;
ELSE
step_lesen := step_lesen+1;
END_IF
END_IF

5:
IF LEN(queryResults[0]) >0
THEN
GL_VAR.qr_code_string_links := queryResults[0];
END_IF

IF fbSQLCommand.bError THEN
db_execute_cmd_error:=TRUE;
step_lesen:=255;
ELSE
step_lesen :=step_lesen+1;
END_IF

// END_IF


6:// disconnect from database
IF fbSqlDatabase.Disconnect() THEN
IF fbSqlDatabase.bError THEN
step_lesen := 255;
ELSE
step_lesen := 0;
END_IF
END_IF
255:
nError := 1; // If errored, check SQL logs.
step_lesen := 0;


END_CASE
 
Hallo,
es gibt bei SQL den "UNION"-Operator, der mehrere select-Statements zusammenführt. Voraussetzung dafür ist, dass gleich viele Spalten in den beiden Statements generiert werden. Hättest du mal ein Beispiel, was aus deinen Querys rauskommen soll?
 
Zurück
Oben