]> andersk Git - moira.git/commitdiff
put in better error checking and commit's between actions
authormar <mar>
Wed, 10 Mar 1993 15:26:44 +0000 (15:26 +0000)
committermar <mar>
Wed, 10 Mar 1993 15:26:44 +0000 (15:26 +0000)
regtape/sign.dc

index e4fa5bd536dac5971fff1973bb78d9435bda7348..887a937097bbbecd1204b23e5b625a915120593d 100644 (file)
@@ -57,6 +57,10 @@ char **argv;
      }
 
      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 
@@ -73,7 +77,15 @@ char **argv;
      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;
@@ -83,7 +95,8 @@ char **argv;
         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];
@@ -117,6 +130,11 @@ char **argv;
         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);
This page took 0.171076 seconds and 5 git commands to generate.