创建表时,Literal与格式字符串不匹配

时间:2015-02-14 16:04:20

标签: sql oracle

我一直在尝试创建一个基本表。每当我尝试创建表时,我都会收到错误

  

literal与格式字符串

不匹配

我试图在2005年到2100年之间限制锦标赛的年份。错误发生在DATE' 2005'。

这是我的代码:

Create table Tournament_T
(Tournament_name VARCHAR (50) PRIMARY KEY NOT NULL,
Tournament_year INTEGER NOT NULL,
CONSTRAINT RANGE CHECK (Tournament_year BETWEEN DATE '2005' AND '2100'),
Tournament_rules CLOB NOT NULL,
Tournament_fee VARCHAR(1000) NOT NULL,
Tournment_eligibility VARCHAR (1000) NOT NULL );
COMMIT;

1 个答案:

答案 0 :(得分:8)

您的约束使用date关键字,但您不需要它。只是做:

CONSTRAINT RANGE CHECK (Tournament_year BETWEEN 2005 AND 2100),

您的列是整数,而不是日期。