SQL/MX Programming Manual for C and COBOL (G06.24+, H06.03+)

Simple and Compound Statements
HP NonStop SQL/MX Programming Manual for C and COBOL523627-004
5-8
Inserting an Interval Value
nonstandard SQL/MP DATETIME columns that are not equivalent to DATE, TIME, or
TIMESTAMP, use the CAST function to insert a row with a date-time value.
Standard Date-Time Example
This example inserts a new row into the PROJECT table, including a timestamp value
in the SHIP_TIMESTAMP column:
EXEC SQL BEGIN DECLARE SECTION END-EXEC.
01 HV-TIMESTAMP TIMESTAMP.
...
EXEC SQL END DECLARE SECTION END-EXEC.
...
* Initialize host variables for new row
...
MOVE "1997-04-25 08:14:12.000000" TO HV-TIMESTAMP.
...
EXEC SQL INSERT INTO PROJECT
(..., SHIP_TIMESTAMP, ...)
VALUES(..., :HV-TIMESTAMP), ...)
END-EXEC.
...
Nonstandard SQL/MP DATETIME Example
This example inserts a new row into the PROJECT table, including a nonstandard time
value, DATETIME HOUR TO SECOND, in the SHIP_TIMESTAMP column:
EXEC SQL BEGIN DECLARE SECTION;
char hv_timestamp[9];
...
EXEC SQL END DECLARE SECTION;
...
... /* Initialize host variables for new row */
strcpy(hv_timestamp,"1997-04-25 08:14:12.000000");
...
EXEC SQL INSERT INTO PROJECT
(..., SHIP_TIMESTAMP, ...)
VALUES(..., CAST(:hv_timestamp AS DATETIME HOUR TO SECOND),
...);
...
Inserting an Interval Value
Insert a row directly with the INTERVAL host variable.
C Interval Example
A table includes a column with a year-month interval and a column with a day-time
interval. This example inserts a new row into this table:
EXEC SQL BEGIN DECLARE SECTION;
INTERVAL YEAR TO MONTH hv_year_month;
COBOL
C
C