}
EXEC SQL CONNECT moira;
+ if (sqlca.sqlcode != 0) {
+ com_err(program, 0, "ingres error %d", sqlca.sqlcode);
+ exit(1);
+ }
sms = 0;
EXEC SQL SELECT string_id INTO :sms FROM strings
EXEC SQL DECLARE c CURSOR FOR
SELECT users_id, login, clearid
FROM users WHERE signature = '';
+ if (sqlca.sqlcode != 0) {
+ com_err(program, 0, "ingres error %d", sqlca.sqlcode);
+ exit(1);
+ }
EXEC SQL OPEN c;
+ if (sqlca.sqlcode != 0) {
+ com_err(program, 0, "ingres error %d", sqlca.sqlcode);
+ exit(1);
+ }
while (1) {
EXEC SQL FETCH c INTO :id, :login, :mid;
if (sqlca.sqlcode != 0) break;
sq_save_data(sq, strsave(buf));
found++;
}
-
+ EXEC SQL CLOSE c;
+ EXEC SQL COMMIT WORK;
printf("Found %d users to sign.\n", found);
si.rawsig = (unsigned char *) &rawsig[0];
EXEC SQL REPEATED UPDATE users
SET signature = :rawsig, sigwho = :sms, sigdate = :timestamp
WHERE users_id = :id;
+ if (sqlca.sqlcode != 0) {
+ com_err(program, 0, "ingres error %d", sqlca.sqlcode);
+ exit(1);
+ }
+ EXEC SQL COMMIT WORK;
if (wait) {
printf("Next");
fflush(stdout);