User Guide

SAP AG November 2002
/* set connect properties */
EXEC SQL SET SERVERDB :serverdb ON :servernode;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* connect to database */
EXEC SQL CONNECT :user IDENTIFIED BY :pwd;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* parse a unicode sql command and give it a statement name */
EXEC SQL PREPARE stmt1 FROM :sqlstmt;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* declare a cursor for a prepared statement name */
EXEC SQL DECLARE curs1 CURSOR FOR stmt1;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* open the cursor "curs1" */
EXEC SQL OPEN curs1;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* loop over resultset */
while (sqlca.sqlcode != 100)
{
/* fetch a single row into a character hostvariable encoded in
UCS2 */
EXEC SQL FETCH curs1 INTO :resultstring;
if (sqlca.sqlcode != 0 && sqlca.sqlcode != 100) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
else {
printAs7bitAscii(resultstring, KNLIDNTFR);
printf("\n");
}
}
/* close the cursor */
EXEC SQL CLOSE curs1;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
/* commit and release the session */
EXEC SQL COMMIT WORK RELEASE;
if (sqlca.sqlcode != 0 ) {
printf("\n%s\n", FormatSQLError(&sqlca));
}
}
/*===================================================================
*
User Manual: SAP DB 100