问题简述:如何使用mysql数据库定义表中的数据类型为date

问题出现的背景:

最近学习SQL语句,采用的教材是《精通SQL:结构化查询语句详解》/高守传编著. 北京:人民邮电出版社,2007.3。这本书的内容主要基于sql server和Oracle的,而我用的是mysql,直接用书上的SQL语句有时会出问题,所以就遇到现在的问题

环境:

数据库:mysql 5.0

数据库管理工具:navicat for mysql version 10.0.10

问题详述:

教科书上的原始SQL语句为(已忽略大小写)

create table course

CNO INT NOT NULL,

CNAME CHAR NOT NULL,

CTIME INT NOT NULL,

SCOUNT INT NOT NULL,

CTEST smalldatetime NOT NULL,

实际在navicat上写SQL语句时,smalldatetime不被识别,

于是修改将书上的SQL语句修改为

create table course

CNO INT NOT NULL,

CNAME CHAR NOT NULL,

CTIME INT NOT NULL,

SCOUNT INT NOT NULL,

CTEST date NOT NULL,

成功!!!

Additional info:

在定义其它数据类型时,Navicat会把数据类型变色为蓝色,而date没有,但是最后还是通过了。不知道为什么,