【答案解析】SELECT Flowerinfo.ID,FlowerInfo.ComName,Delivery.DelSize
From FLOWERINFO ASF,DELIVERY AS D
WHERE F.Delivered=D.id AND D.Category='pot'
ORDER BY F.ComName DESC;
【答案解析】(1)GRANT INSERT ON TABLE ZONE TO SMITH WITH GRANT OPTION;
(2)REVOKE UPDATE(ComName)ON TABLE FLOWERINFO FROM TOM;
(3)CREATE VIEW Viewpot(ID,ComName,DelSize)
AS
SELECT FlowerInfo.ID,FlowerInfo. ComName,Delivery.DelSize
From FLOWERINFO ASP,DELIVERY AS D
WHERE F.Delivered=D.ID AND D.Category='pot'
ORDER BY F. ComName DESC;
[解析] 问题1的插入语句很简单,只是考查考生基本的SQL语言能力。
Insert语句的基本格式如下:
INSERT INTO基本表名(字段名[,字段名]…)
VALUES(常量[,常量]…);
问题2中的查询需要两个表:delivery和flowerinfo,必须知道如何连接这两个表。
SELECT语句的基本格式如下:
SELECT [ALL|DISTINCT]<目标列表达式>[别名][,<目标列表达式>[别名]]…
FROM<表名或视图名>[别名][,<表名或视图名>别名]]…
[WHERE<条件表达式>]
[GROUP BY<列名1>[HAVING<条件表达办>]]
[ORDER BY<列名2>[ASC|DESC]];
SQL语言中的数据控制语句有授权(GRANT),收回权限(REVOKE),一般考生对这两个语句的掌握可能会不熟悉。
SQL语言用CREATE VIEW命令建立视图,其一般格式为:
CREATE VIEW<视图名>[(<列名>(<,<列名>)…)]
AS<子查询>
[WITH CHECK OPTION];
SQL语言用GRANT语句向用户授予操作权限,GRANT语句的一般格式为:
GRANT<权限>[,<权限>]…
[ON<对象类型><对象名>]
TO<用户>[,用户>]…
[WITH GRANT OPTION];
其语义是将对指定操作对象的指定操作权限授予指定的用户。[WITH GRANT OPTION]是可将获得的权限授予他人。
授予的权限可以由DBA或其他授权者用REVOKE语句收回。
REVOKE语句的一般格式为:
REVOKE<权限>[,<权限>]…
[ON<时象类型><对象名>]
FROM <用户>[,<用户>]…;