在数据库设计过程中一般要遵循第一范式、第二范式、第三范式以及BCNF范式、第四范式。那么请你改正下面的数据库设计中的不足之处。
条件:设R(BOOK_ID,BOOK_NAME,AUTHOR,AGE)的属性分别表示为书号、书名、作者、和作者的年龄。如果约定:每一个书号对应一个书名:但不同的书号可以有相同的书名:每本书可以有多个作者合写:但每个作者参与编写的图书的书名应该互不相同。原来的数据库模型:
数据库表名:BOOK_INFORMATION
BOOK_ID BOOK_NAME AUTHOR AGE
1 SQL SEEVER2000轻松进级 Mike Gunderloy ; MaryChipman 45 ; 38
2 …… …
3 …… …
a) 你的设计模型:(列出数据表名、相应的字段名、约束)
b) 从你设计的数据库总列出所有作者年龄大于40岁的图书名称
c) 把一个书名为《精通SQL》的作者改为“Tom”
条件:设R(BOOK_ID,BOOK_NAME,AUTHOR,AGE)的属性分别表示为书号、书名、作者、和作者的年龄。如果约定:每一个书号对应一个书名:但不同的书号可以有相同的书名:每本书可以有多个作者合写:但每个作者参与编写的图书的书名应该互不相同。原来的数据库模型:
数据库表名:BOOK_INFORMATION
BOOK_ID BOOK_NAME AUTHOR AGE
1 SQL SEEVER2000轻松进级 Mike Gunderloy ; MaryChipman 45 ; 38
2 …… …
3 …… …
a) 你的设计模型:(列出数据表名、相应的字段名、约束)
b) 从你设计的数据库总列出所有作者年龄大于40岁的图书名称
c) 把一个书名为《精通SQL》的作者改为“Tom”
解决方案 »
- 如何求某学科前80%或40%标准分
- SQL达人乱入
- asp连接数据库怎么运行不了? 谁是高手了?
- sql语句查询问题
- 关于Group by 语句的问题,在线等啊!!1!1
- 在98上装了msde为什么有时候服务停止了,必须重装msde才可以!!!
- 1条查询语句实现几条记录字段汇总在线等?
- 如何得到 exec (@sql) @sql语句中的反回值?
- 关于SQL Server,你们遇到过吗????????????????---2
- 在XP上第一次安装SQL Server 2000 Personal是好的,可是删除后重装报错。启动服务器出错
- 菜鸟初学,这2个问题实在想不出了
- SQL2000数据库权限问题
表bookinfo
bookid pk identity(1,1)
book_name
表authorinfo
authorid pk identity(1,1)
authorname
age
表auther2book
id pk identity(1,1)
autherid
bookid
select bookinfo.name from bookinfo inner join auther2book on
auther2book.bookid=bookinfo.bookid inner join autherinfo on
autherinfo.id=auther2book.autherid where autherinfo.age > 40update autherinfo set name='Tom'
where id in (select bookinfo.autherid from auther2book inner join bookinfo on
auther2book.bookid=bookinfo.bookid where bookinfo.name='《精通SQL》')
update autherinfo
set name='Tom'
from bookinfo bi,auther2book a2b,autherinfo ai
where a2b.bookid=bi.bookid and bi.name='《精通SQL》' and ai.id=bi.bookid