SQL/MX Programming Manual for C and COBOL (G06.24+, H06.03+)
C Sample Programs
HP NonStop SQL/MX Programming Manual for C and COBOL—523627-004
A-23
Using a Dynamic SQL Cursor With Descriptor Area
 case 2:
 memset(hv_time,' ',sizeof(hv_time));
 EXEC SQL GET DESCRIPTOR 'out_sqlda' VALUE :i
 :hv_time = VARIABLE_DATA;
 hv_time[hv_length]=0;
 printf ("time Value: %s\n", hv_time); 
 break;
 case 3:
 memset(hv_timestamp,' ',sizeof(hv_timestamp));
 EXEC SQL GET DESCRIPTOR 'out_sqlda' VALUE :i
 :hv_timestamp = VARIABLE_DATA;
 hv_timestamp[hv_length]=0;
 printf ("timestamp Value: %s\n", hv_timestamp); 
 break;
 } /* end switch hv_datetime */
 break;
 case 10:
 switch (hv_datetime) {
 case 7: /* INTERVAL YEAR TO MONTH */
 memset(hv_y22mo,' ',sizeof(hv_y22mo));
 EXEC SQL GET DESCRIPTOR 'out_sqlda' VALUE :i
 :hv_y22mo=VARIABLE_DATA;
 hv_y22mo[hv_length]=0;
 printf ("Interval year to month: %s/n", hv_y22mo);
 break;
 case 10: /* INTERVAL DAY TO FRACTION */
 memset(hv_d2s4,0,sizeof(hv_d2s4));
 EXEC SQL GET DESCRIPTOR 'out_sqlda' VALUE :i
 :hv_d2s4=VARIABLE_DATA;
 hv_d2s4[hv_length]=0;
 printf ("Interval daytosecond: %s", hv_name);
 break;
 } /* end switch hv_datetime */
 break;
 case 12:
 printf ("Varchar: %s, Type: %d, Length: %d, Null: %d",
 hv_name, hv_type, hv_length, hv_indicator);
 EXEC SQL GET DESCRIPTOR 'out_sqlda' VALUE :i
 :hv_varchar = VARIABLE_DATA;
 printf (" Value: %s\n", hv_varchar); 
 break;
Example A-7. Using a Dynamic SQL Cursor With Descriptor Areas (page 6 of 8)










