目录

运行说明

例题

例题解答


运行说明

1、运行环境:win10

2、所需步骤:

(1) 通过PowerDesigner软件创建逻辑数据模型(CDM),再将其转换为物理数据模型(PDM),再导出为SQL语句。

(2)通过在NavicatPremium中运行所导出的SQL文件,自动生成数据库中的表。

(3)完成问题。

3、数据库语句:My SQL

例题

创建一个数据库SPJ,包含S、P、J及SPJ 4个关系模式

S(sno,sname,status,city)

P(pno,pname,color,weight)

J(jno,jname,city)

SPJ(sno,pno,jno,qty)

1、表格详情:

(1)供应商(S)由供应商代码(sno)、供应商姓名(sname)、供应商状态(status)、供应商所在城市(scity)组成

(2)零件表(P)由零件代码(pno)、零件名(pname)、颜色(color)、重量(weight)组成

(3)工程项目表(J)由工程项目代码(jno)、工程项目名(jname)、工程项目所在城市(jcity)组成。

(4)供应情况表(SPJ)由供应商代码(sno)、零件代码(pno)、工程项目代码(jno)、供应数量(qty)组成,表示某供应商供应某种零件给某工程项目的数量为qty

2、表格数据

S表

P表

J表

SPJ表

例题解答

1、通过PowerDesigner软件创建逻辑数据模型(CDM)。

结果如图所示:

2、将CDM图转换为物理数据模型(PDM):将实体转换为表,将实体的属性转换为表的列。

结果如图所示:

3、将其转换为SQL数据库语句

4、在NavicatPremium的My SQLs数据库下运行SQL语句。

5、运用SQL语句完成下列问题

(1)找出所有供应商的姓名和所在城市

SELECT sname,scity FROM S;

(2)找出所有零件的名称、颜色、重量

SELECT pname,color,weight FROM P;

(3)找出使用供应商S1所供应零件的工程号码

SELECT jno FROM SPJ WHERE sno='S1';

查询结果为:     J1 、J3 、J4 、J2

(4)找出工程项目J2使用的各种零件的名称及其数量

SELECT pname,qty FROM P,SPJ WHERE SPJ.pno=P.pno AND SPJ.jno='J2';

(5)找出上海厂商供应的所有零件号码

SELECT DISTINCT pno FROM SPJ WHERE sno=(SELECT sno FROM S WHERE scity='上海')

查询结果为:P2 、P3 、P6

(6)找出使用上海产的零件的工程名称

SELECT jname FROM J WHERE jno IN (SELECT jno FROM SPJ WHERE sno=(SELECT sno FROM S WHERE scity='上海'));

查询结果为:造船厂、三建、一汽

(7)找出没有使用天津产的零件的工程号码

SELECT DISTINCT jno FROM  SPJ WHERE sno NOT IN (SELECT sno FROM S WHERE scity='天津');

查询结果为:J1 、J2 、J4 、J5

(8)查询供应工程J1零件的供应商号码sno

SELECT DISTINCT sno FROM SPJ WHERE jno='J1';

查询结果为:S1 、S2 、S3 、S4 、S5

(9)查询供应工程J1零件P1的供应商号码sno

SELECT sno FROM SPJ WHERE jno='J1' AND pno='P1';

查询结果为:S1 、S3

(10)查询供应工程J1零件为红色的供应商号码sno

SELECT SNO FROM spj WHERE JNO='J1'AND PNO IN(SELECT PNO FROM p WHERE COLOR='红');

查询结果为:S1 、S3

(11)查询没有使用天津供应商生产的红色零件的工程号jno

SELECT DISTINCT jno FROM SPJ
WHERE jno NOT IN (SELECT jno FROM SPJ,S,PWHERE SPJ.sno = S.sno AND S.scity = '天津'AND SPJ.pno = P.pno AND P.color = '红');

查询结果为:J2 、J5

数据库例题(创建数据库SPJ包含S、P、J和SPJ表)相关推荐

  1. oracle数据库怎么创建数据库 oracle数据库工作流程

    oracle数据库怎么创建数据库 数据库用户的创建.权限的分配 数据库安装完成后,有两个系统级的用户: system 默认密码为:manager sys 默认密码为:change_on_install ...

  2. 在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号、书名、单价、数量)。 利用JDBC连接数据库dbjava,实现数据表的增删 改查

    题目 1.在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号.书名.单价.数量). 2.利用JDBC连接数据库dbjava,实现数据表 ...

  3. 用mysql创建数据库school_MySQL 创建数据库

    我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 以下命令简单的演示了创建数据库的过程,数据名为 schoolw3c: [ ...

  4. oracle数据库创建user,Oracle数据库如何创建数据库用户呢?

    摘要: 下文讲述Oracle数据库中创建数据库用户的方法分享,如下所示: 在oracle数据库中,当我们创建了相应的数据库后,通常我们会为数据库指定相应的用户,然后单独操作此数据库, 下文讲述orac ...

  5. 新建mysql数据库方法_三种方法建立MySQL数据库_创建数据库_新建数据库 - 树懒学堂...

    第一种:使用CMD命令 我们可以在cmd命令窗口使用sql语句建立数据库,创建数据库的sql语句语法格式如下: CREATE DATABASE [IF NOT EXISTS] [[DEFAULT] C ...

  6. Android Studio 使用SQLite数据库来创建数据库+创建数据库表+更新表再次往表添加字段

    目录 一.前言 二.SQLite数据库介绍 1.什么是SQLite数据库 2.特点 3.SQLite 操作API 4.SQLite数据类型 三.SQlite数据库的使用 1.创建类继承SQLiteOP ...

  7. 从数据库备份创建数据库

    1.(可选,如果在本地创建可不用)创建密码文件(在数据库还不存在的情况下用于验证密码) orapwd file='full file path' entries=20 最好将该文件放在数据库的默认位置 ...

  8. 查看mysql创建 数据库_Mysql创建数据库和查看数据库

    1.create database  ;(创建数据库) create database mydb1 =(自定义) [DEFAULT] CHARACTER SET charset_name  -- CH ...

  9. HiveHive创建数据库与创建数据库表

    文章目录 创建数据库 创建数据库操作(增) 删除数据库(删) 修改数据库(改) 查看数据库详细信息(查) 数据库的切换: 创建数据库表操作 内部表与外部表的区别 hive数据表基本操作(增删改查) H ...

  10. gp数据库创建数据库_创建数据库简介

    gp数据库创建数据库 MySQL是当今最流行的开源数据库之一. 它在商业和开源双重许可模式下可用. MySQL找到了从嵌入式设备到集群企业环境的各种应用程序. POWER5™处理器是IBMPPC®AS ...

最新文章

  1. 【tensorflow】重置/清除计算图
  2. DMB DSB ISB 简介
  3. mysql 按时间累计计算_MySQL某公司面试题累计值的计算案例
  4. JAVA——基于HttpClient的通过单点登录方式(统一身份认证平台)登录正方教务系统[1999-2020]基本解决方案
  5. Kafka-Monitor
  6. /proc/kcore失效,调试其文件系统相关模块,使重新正常工作
  7. mxnet img2rec的使用,生成数据文件
  8. 字节JAVA研发面试
  9. 【蜕变之路】第15天 Eclipse常用问题 (2019年3月5日)
  10. 计算机网络学习笔记(4. Internet结构)
  11. Mad Libs 游戏
  12. linux编译安装libxml2,libxml2的编译与安装
  13. 爬虫第十一式:用selenium爬取民政部行政区划代码
  14. 分享一款手机最强Python编程神器,用手机运行Python。天秀!
  15. vue 前端获取用户登录地址 ip 设备型号
  16. 处理器哪个好_对比骁龙730G、765G、猎户座980、天玑1000处理器,性能哪个好?
  17. 【Photoshop】——Ps基础学习笔记
  18. 【淘宝补单】操作干预单不能在犯的错误
  19. C#练习题答案: 反恐精英系列【难度:1级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战
  20. EasyExcel导出自定义合并单元格文件

热门文章

  1. 魅族mx6 原生android,手机 篇一:魅族16s真实使用感受漫谈
  2. 页面中多次使用TWEEN.update()的坑
  3. Bitmap、CBitmap、HBITMAP以及BITMAP的相互转换
  4. 全国流通经济杂志全国流通经济杂志社全国流通经济编辑部2022年第25期目录
  5. Hi 小姐姐,这是你要的瘦身大长腿效果?
  6. 【CSU-PIPIOJ】1254 PIPI上学路
  7. 中移物联网入门记录(1)
  8. 循序渐进学Java day1
  9. 移动硬盘装ubuntu
  10. echart 动画 饼图_巧用EChart画动态饼图