数据库基础知识点(系列五)

devtools/2025/3/30 12:56:34/

创建表,设置约束,修改表,删除表,表中数据的操作(insert,修改,删除)

1.在第5章习题创建的 “仓库库存”数据库中完成下列操作。

(1)创建“商品”表,表结构如表6-4:

 表6-4 “goods”商品表

(2)创建“store”仓库表,表结构如表6-5:

                                    表6-5 “store”仓库表

(3)创建“invent”库存情况表,表结构如表6-6:

表6-6 “invent”库存情况表

 (3)创建“manager”管理员表,表结构如表6-7:

表6-7 “manager”管理员表

答:(1)

USE仓库库存

GO

CREATE TABLE goods

      (gno     char(6)     PRIMARY KEY, //主键

      gname nvarchar(10)  NOT  NULL,  //不能为空值

      price      float     NOT  NULL,

      producer nvarchar(30)  NOT  NULL

    )

CREATE TABLE store

      (stno     char(3)   PRIMARY KEY,

      address nvarchar(30)  NOT  NULL,

      telephone  varchar(11)  check(telephone like '[0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]' ),

      capacity   smallint

     )

CREATE TABLE invent

      (stno   char(3)  foreign key references store(stno),

      gno  char(6)  foreign key references goods(gno),

      number   int,

     primary key(stno,gno)

   )

CREATE TABLE manager

      (mno     char(3)  PRIMARY KEY,

     mname nvarchar(10)  NOT  NULL,

      sex     nchar(1)  check(sex in ('男','女')),

      birthday  date  check(birthday between '19570101' and '20100101'),

      stno  char(3)  foreign key references store(stno)

)

Alter table store

Add check(capacity>=sum(number))

2.建立商品表、仓库表、库存情况表和管理员表四表之间的关系图。

答:略。

3.分别给商品表、仓库表、库存情况表和管理员表添加数据。

答:例如,

INSERT INTO goods VALUES('bx-179','冰箱',3200,'青岛海尔')

   INSERT INTO store VALUES('001','1号楼','89000001',69)

   INSERT INTO invent VALUES('004','bx-179',5)

INSERT INTO manager VALUES('101','张力','男','1989-2-3','001')

4. 在teaching教学库创建一个student1表,包含“学号”、“姓名”和“年级”列,要求能够与student表同步插入、修改和删除数据。

答:CREATE TABLE student1

  (  sno     char(7)      PRIMARY KEY,

  sname   nvarchar(10)      NOT NULL,

  grade   nchar(3)     NULL,

  )

MERGE student1 AS d  USING  student  AS s  

ON s.ProductID=d.ProductId  WHEN NOT MATCHED BY TARGET

THEN INSERT(sno,sname,grade) VALUES(s.sno, s.sname, s.grade)  

WHEN NOT MATCHED BY SOURCE THEN  DELETE  

WHEN MATCHED THEN  

UPDATE SET d.sname = s.sname, d.grade = s.grade;


http://www.ppmy.cn/devtools/171618.html

相关文章

【transformer理论+实战(三)】必要的 Pytorch 知识

【Transformer理论实战(三)】必要的 Pytorch 知识 【Transformer理论实战(二)】Lora本地微调实战 --deepseek-r1蒸馏模型 【Transformer理论实战(一)】Transformer & LLaMA & Lora介绍 文章目录 Py…

Keil(ARMCC)编译改为Cmake(GNU)编译

1. 环境介绍: 某款ARM-M4芯片(应该芯片通用)cmkeGNUNinja(CLion) 2. 必备: 芯片启动文件 startup_xxxx.s链接文件 xxxx_flash.ldCMakeLists.txt 3. 具体修改步骤 第一步:观察启动文件…

Xenium | 细胞邻域(Cellular Neighborhood)分析(fixed k-nearest neighbor)

CN分析概念最早来源于空间单细胞蛋白组Codex文章,Coordinated Cellular Neighborhoods Orchestrate Antitumoral Immunity at the Colorectal Cancer Invasive Front。 定义 Cell Neighborhood(细胞邻域)指骨髓微环境中空间上邻近的细胞群体…

【Python-OpenCV】手势控制贪吃蛇

用手势玩转经典游戏:打造一个手势控制的贪吃蛇 你是否曾经想过,如果能用手势来控制游戏会是什么体验?今天,我要向大家介绍一个有趣的项目——手势控制贪吃蛇游戏。这个项目结合了计算机视觉和经典游戏,让你可以通过简单…

关于服务器只能访问localhost:8111地址,局域网不能访问的问题

一、问题来源: 服务器是使用的阿里云的服务器,服务器端的8111端口没有设置任何别的限制,但是在阿里云服务器端并没有设置相应的tcp连接8111端口。 二、解决办法: 1、使用阿里云初始化好的端口;2、配置新的阿里云端口…

如何监控 SQL Server

监控 SQL Server 对于维护数据库性能、确保数据可用性和最大限度地减少停机时间至关重要。随着企业越来越依赖数据驱动的决策,高效的SQL Server监控策略能显著提升组织生产力和用户满意度。 为什么要监控 SQL Server SQL Server 是许多关键应用程序的支柱&#xf…

fileinclude

##解题思路 场景首页没有什么提示,只有个flag在flag.php中,而且需要更改language,还有个index.php的路径,先记住它 习惯性查看源代码,得到了题目真正的内容,关键在于lan变量读取我们传入的Cookie值中的lang…

强化学习与神经网络结合(以 DQN 展开)

目录 基于 PyTorch 实现简单 DQN double DQN dueling DQN Noisy DQN:通过噪声层实现探索,替代 ε- 贪心策略 Rainbow_DQN如何计算连续型的Actions 强化学习中,智能体(Agent)通过与环境交互学习最优策略。当状态空间或动…