cat > script.cc <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
#include	<mscc.h>
#include <stdlib.h>
void	error	(int	i);
EXEC SQL INCLUDE SQLCA;
EXEC SQL BEGIN DECLARE SECTION ;
char name[25],date[21],amount[9];
char name1[25],date1[21],amount1[9];
EXEC SQL END DECLARE SECTION ;
int	main (int argc, char** argv)
{
EXEC SQL INIT;
EXEC SQL DATABASE IS "TEST_DATABASE";
EXEC SQL SELECT name,date,amount FROM loans INTO :name,:date,:amount 
   WHERE name = "Kilroy";
if(SQLCODE != 0) error(1);
printf("select 1 ok\n");
EXEC SQL UPDATE loans SET name,date,amount VALUES :name,:date,:amount 
   WHERE name = "Kilroy";
if(SQLCODE != 0) error(2);
printf("update 1 ok\n");
EXEC SQL UPDATE loans SET name=:name,date=:date,amount=:amount 
   WHERE name = "Kilroy";
if(SQLCODE != 0) error(3);
printf("update 2 ok\n");
EXEC SQL UPDATE loans SET name=:name WHERE name = "Kilroy";
if(SQLCODE != 0) error(4);
printf("update 3 ok\n");
EXEC SQL UPDATE loans SET name="Kilroy" WHERE name = "Kilroy";
if(SQLCODE != 0) error(5);
printf("update 4 ok\n");
EXEC SQL SELECT name,date,amount FROM loans INTO :name1,:date1,:amount1 
   WHERE name = "Kilroy";
if(SQLCODE != 0) error(6);
printf("select 2 ok\n");
if(strcmp(name,name1)==0 && strcmp(date,date1)==0 && strcmp(amount,amount1)==0)
	printf("test ok\n");
   else printf("bad results\n");
EXEC SQL EXIT ;
	return 0;
}
void	error (int	i)
{
	printf("error number %d\n",i);
	printf("SQLCODE number %ld\n",SQLCODE);
}
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 script.cc
cat > stdout <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
select 1 ok
update 1 ok
update 2 ok
update 3 ok
update 4 ok
select 2 ok
test ok
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 stdout
cat > tag <<'+-+-+-+-+-END-OF-FILE-+-+-+-+-+'
Update statement (3)
+-+-+-+-+-END-OF-FILE-+-+-+-+-+
chmod 644 tag
