使用ODBCtest将已转换的区间文字插入teradata 13.0数据库的问题

时间:2011-06-14 20:14:38

标签: sql odbc teradata

我正在尝试执行此查询:

INSERT INTO SEN.Interval_Day_Minute_Table VALUES('NegativeIntervalDay', CAST(INTERVAL -'200 5' DAY TO HOUR AS INTERVAL DAY (4) TO MINUTE))

使用ODBCtest进入teradata数据库,我收到以下错误:

SQLExecDirect:
                In:             Statementhandle = 0x000000000053C270, StatementText = "INSERT INTO SEN.Interval_Day_Minute_Table VALUES('...", Statementlength = 142
                Return: SQL_ERROR=-1
                stmt:       szSqlState = "37000", *pfNativeError = -3706,                       szErrorMsg = "[Teradata][ODBC Teradata Driver][Teradata Database] Syntax error: Invalid INTERVAL Literal. "

该表创建于:

CREATE TABLE SEN.Interval_Day_Minute_Table(
KeyColumn CHAR (255) CHARACTER SET UNICODE,
Column1 INTERVAL DAY (4) TO MINUTE)

我是Teradata的新手,但据我所知,我使用了正确的语法。

1 个答案:

答案 0 :(得分:0)

问题是字符串的'小时'部分必须是两位数,所以''200 05'而不是-'200 5'。

哎呦