]> andersk Git - moira.git/blobdiff - backup/db2rest.awk
Command line printer manipulation client, and build goo.
[moira.git] / backup / db2rest.awk
index 07e637e9e17a1041f41ee5d05952132e3ffacd4d..1f8a4a9ef6dcb6e0d987c0817c331372df400343 100644 (file)
@@ -42,7 +42,7 @@ NF >= 2 {
        vname[count] = $1;
        printf "  /* %s */\n", $0;
        if ($2 ~ /INTEGER/ || $2 ~ /SMALLINT/ || $2 ~ /INTEGER1/) {
-               printf "  int\tt_%s;\n", vname[count];
+               printf "  char\tt_%s[39];\n", vname[count];
                vtype[count]="int";
        } else if ($2 ~ /CHAR\([0-9]*\)/) {
                t = split($2, temp, "(");
@@ -71,7 +71,7 @@ NF >= 2 {
        for (i = 0; i < count; i++) {
                if (i != 0) print "      parse_sep(f);";
                if (vtype[i] ~ /int/) {
-                       printf("      t_%s = parse_int(f);\n", vname[i]);
+                       printf("      parse_str(f, t_%s, 39);\n", vname[i]);
                } else if (vtype[i] ~ /date/) {
                        printf "      parse_str(f, t_%s, 26);\n", vname[i];
                } else {
@@ -92,7 +92,7 @@ NF >= 2 {
                if (vtype[i] ~ /date/) {
                        printf "          TO_DATE(NVL(:t_%s,TO_CHAR(SYSDATE, 'DD_mon-YYYY HH24:MI:SS')), 'DD-mon-YYYY HH24:MI:SS')", vname[i];
                } else if(vtype[i] ~ /int/) {
-                       printf "          :t_%s", vname[i];
+                       printf "          TO_NUMBER(:t_%s)", vname[i];
                } else {
                        printf "          NVL(:t_%s,CHR(0))", vname[i];
                }
This page took 0.043294 seconds and 4 git commands to generate.