参考答案公布如下:
1.1
CREATE TABLE Addressbook
(
regist_no INTEGER NOT NULL,
name VARCHAR(128) NOT NULL,
address VARCHAR(256) NOT NULL,
tel_no CHAR(10) ,
mail_address CHAR(20) ,
PRIMARY KEY (regist_no));
1.2
-- [Oracle]
ALTER TABLE Addressbook ADD (postal_code CHAR(8)) NOT NULL;
-- [SQL Server]
ALTER TABLE Addressbook ADD postal_code CHAR(8) NOT NULL;
/*
[DB2] 无法添加。
在DB2中,如果要为添加的列设定NOT NULL约束,
需要像下面这样指定默认值,或者删除NOT NULL约束,
否则就无法添加新列。
*/
-- [DB2 修正版]
ALTER TABLE Addressbook ADD COLUMN postal_code CHAR(8) NOT NULL DEFAULT '0000-000';
1.3
DROP TALBE Addressbook;
1.4
删除后的表无法使用命令进行恢复(不使用辅助工具的情况下),请使用习题1.1答案中的 CREATE TABLE 语句再次创建所需的表。