列表

详情


某医院住院部设有病人关系R(住院号,姓名,性别,、科室号,病房,家庭住址),其中:“住院号”唯一标识关系R中的每一个元组。“性别”的取值只能为M或F;科室关系D(科室号,科室名,负责人,联系电话),其中:“科室号”唯—标识关系D中的每一个元组。创建R关系的SQL语句如下:
CREATE TABLER(
    住院号CHAR(4) PRIMARY KEY,
    姓名CHAR(10),
性别CHAR(1) (  )
科室号CHAR(4) (  )
    家庭住址CHAR(30));

第 1 问

A. IN(M,F)

B. CHECK('M' ,'F')

C. LIKE('M' ,'F')

D. CHECK(性别 IN('M' ,'F'))

第 2 问

A. NOT NULL

B. REFERENCES D(科室号)

C. NOT NULL UNIQUE

D. REFERENCES D(科室名)

参考答案: D B

详细解析:

创建表的基本语法:
CREATE  TABLE  <表名>
(
       <列名1><数据类型>[列级完整性约束条件]
       [, · · · n]
)
定义主键使用:PRIMARY  KEY 或PRIMARY  KEY (列名)方式
定义外键使用:REFERENCES   表名(列) 或FOREIGN   KEY (列名) REFERENCES  表名(列)方式
定义自定义约束使用:CHECK  (约束表达式)
本题第1问是要对性别进行约束,所以需要使用check,由于性别为字符类型需要使用单引号。所以正确的选项应该为: D
本题第2问,科室号关联到科室关系,在R关系中科室号应定义为外键,外键定义时应该关联到的是科室关系的科室号,所以正确的选项应为B

上一题