数据库初学者问题:创建基本表

来源:百度知道 编辑:UC知道 时间:2024/05/31 22:32:16
用SQL语言的方式建立三张基本表:STUDENT1(sno char(8),sname char(8),sex char(5),age int), SC1(sno char(8),cno char(3), grade int),COURSE1(cno char(3) ,cname char(20),ccredit int,tmp(aa char(2),bb int))

CREATE TABLE student1
(sno char(8),
sname char(8),
sex char(5),
age int
);
CREATE TABLE SC1
(sno char(8),
cno char(3),
grade int
);
CREATE TABLE COURSE1
(cno char(3) ,
cname char(20),
ccredit int,
tmp(aa char(2),bb int)
);

分析查询时说列 'tmp' 的定义中必须包括数据类型。

请问这该怎么解决?
谢谢

您似乎是建立了4个表啊,
最后一个COURSE1中的 TMP 并不是在定义字段,而明显是一个含有两个字段的表。
这段语句从哪里来的?
把最后一个字段分解开
CREATE TABLE COURSE1
(cno char(3) ,
cname char(20),
ccredit int
);
create table tmp
(aa char(2),bb int)

SQL是不允许表中有表的,每个属性列都具有原子性,报错的意思是把tmp(aa char(2),bb int)都看成是一个属性列的名字,所以说你没定义数据类型,你看别的定义都是前面数据名字,加空格后面是类型,具体怎么创建要看你所需要的表的结构,tmp究竟是在什么位置起什么作用