求写数据库sql代码

某医院的病房管理系统数据库需要如下信息:科室:科名、科地址、科电话、医生姓名病房:病房号、床位号、所属科室名医生:姓名、职称、所属科室名、年龄、工作证号病人:病历号、姓名... 某医院的病房管理系统
数据库需要如下信息:
科室:科名、科地址、科电话、医生姓名
病房:病房号、床位号、所属科室名
医生:姓名、职称、所属科室名、年龄、工作证号
病人:病历号、姓名、性别、诊断、主管医生、病房号
其中:一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室,但可负责多个病人的诊治,一个病人的主管医生只有一个。

对应的关系模式结构如下:
科室(科名,科地址,科电话)
病房(病房号,床位号,科室名)
医生(工作证号,姓名,职称,科室名,年龄)
病人(病历号,姓名,性别,主管医生,病房号)
展开
 我来答
百度网友2dca20d
2014-12-24 · TA获得超过4036个赞
知道大有可为答主
回答量:2638
采纳率:77%
帮助的人:1022万
展开全部
CREATE TABLE 科室
(科名 VARCHAR(20) PRIMARY KEY,
科地址 VARCHAR(50),
科电话 VARCHAR(20))

CREATE TABLE 病房
(病房号 CHAR(10) PRIMARY KEY,
床位号 CHAR(6),
科室名 VARCHAR(20) REFERENCES 科室(科名))

CREATE TABLE 医生
(工作证号 CHAR(8) PRIMARY KEY,
姓名 CHAR(10) NOT NULL,
职称 CHAR(20),
科室名 VARCHAR(20) REFERENCES 科室(科名))

CREATE TABLE 病人
(病历号 CHAR(10) PRIMARY KEY,
姓名 CHAR(10) NOT NULL,
性别 CHAR(2),
主管医生 CHAR(8) REFERENCES 医生(工作证号),
病房号 CHAR(10) REFERENCES 病房(病房号))
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
扈怀炜4h
2014-12-24 · TA获得超过6039个赞
知道大有可为答主
回答量:6907
采纳率:67%
帮助的人:1340万
展开全部
是要创建这些表吗?
追问
追答

这个关系模式的结构是你写的?不合理!所以我修改了

create database hospital
go

use hospital
go

create table 科室
(
  科室名 nvarchar(10) primary key,
  地址   nvarchar(20),
  电话   varchar(11)
)
go

create table 病房
(
  病房号 char(5) primary key,
  科室名 nvarchar(10) foreign key references 科室(科室名)


create table 医生
(
  工作证号 char(5) primary key,
  姓名     nvarchar(5) not null,
  职称     nvarchar(10),
  科室名   nvarchar(10) foreign key references 科室(科室名),
  年龄     int
)

go

create table 病人
(
  病例号 char(10) primary key,
  姓名  nvarchar(10) not null,
  性别  nchar(1),
  主治医生 char(5) foreign key references 医生(工作证号)
)

go

create table 住院
(
  病例号 char(10) foreign key references 病人(病例号),
  病房号 char(5) foreign key references 病房(病房号),
  床位号 int,
  入住时间 smalldatetime,
  primary key(病例号,病房号)
)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式