课设系统篇

《古代六扇门人员管理系统》

数据库 sixdoor

编码 utf8mb4

视图

查询官员等级

存储过程

CREATE DEFINER=`root`@`localhost` PROCEDURE `levelname`(IN g_name VARCHAR(20))
BEGIN
    SELECT `name`,`level` FROM `servingofficials` INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role
 WHERE `name` = g_name;
END
​
​
CREATE DEFINER=`root`@`localhost` PROCEDURE `show_all`()
BEGIN
SELECT * from servingofficials;
END

存储函数

CREATE FUNCTION getname(gid VARCHAR(20)) 
RETURNS VARCHAR(50) 
BEGIN
    DECLARE out_name VARCHAR(50);
    SELECT `name` INTO out_name FROM servingofficials
    WHERE servingofficials.id = gid;
RETURN out_name;
END;

触发器

DELIMITER //
CREATE TRIGGER check_name
BEFORE INSERT
ON servingofficials
FOR EACH ROW
IF NEW.servingofficials.name = NULL THEN
SIGNAL SQLSTATE '45000'
SET MESSAGE_TEXT = "输入的姓名不为空";
END IF//
DELIMITER ;
CREATE TRIGGER `name` AFTER INSERT ON `servingofficials` FOR EACH ROW BEGIN
 UPDATE servingofficials SET `name` =
END;

外键

表已经建好时候

ALTER TABLE t_info ADD FOREIGN KEY (user_id) REFERENCES t_user(id);
​
ALTER TABLE users ADD FOREIGN KEY (user_account) REFERENCES account(user_account);

建表时添加外键

create table users2(
        user_id char(10) not null,
        user_account char(10) not null,
        user_name varchar(10) not null,
        user_sex char(1) not null,
        user_age int(3) not null,
        user_telephone char(11) not null,
        user_level int(1) not null,
        primary key (user_id),
        foreign key(user_account) references account(user_account)
);
​

字符校对 utf8mb4_general_ci

CREATE DATABASE `sixdoor` /*!40100 COLLATE 'utf8mb4_general_ci' */

查询官员几品

SELECT * FROM `servingofficials` INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role;
​
SELECT `level` FROM `servingofficials` INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role
 
 WHERE `name`='陆九渊';

使用内连接

​
SELECT servingofficials.id,servingofficials.`name`,servingofficials.bday,servingofficials.role,jobtitle.`level` FROM `servingofficials` INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role;
SELECT servingofficials.id,servingofficials.name,servingofficials.bday,servingofficials.role,jobtitle.level,salaries. Monthlysalaries,salaries.Romey FROM servingofficials INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role
 JOIN salaries ON jobtitle.level=salaries.level

视图创建

  • 创建角色视图

CREATE VIEW `sixdoor`.`view_level` AS SELECT `name`,`level` FROM `servingofficials` INNER JOIN jobtitle on
 servingofficials.role = jobtitle.role;
  • 创建salaries视图

    CREATE VIEW `sixdoor`.`view_salaries` AS select `servingofficials`.`id` AS `id`,`servingofficials`.`name` AS `name`,`servingofficials`.`bday` AS `bday`,`servingofficials`.`role` AS `role`,`jobtitle`.`level` AS `level`,`salaries`.`Monthlysalaries` AS `Monthlysalaries`,`salaries`.`Romey` AS `Romey` from ((`servingofficials` join `jobtitle` on((`servingofficials`.`role` = `jobtitle`.`role`))) join `salaries` on((`jobtitle`.`level` = `salaries`.`level`)));

主外键的区别,主从表的区别

1、主键约束( PRIMARY KEY):
Ⅰ、 唯一标识数据库表中的每条记录;
Ⅱ、主键必须包含唯一的值;
Ⅲ、主键列不能包含 NULL 值;
Ⅳ、每个表都应该有一个主键,并且每个表只能有一个主键。(PRIMARY KEY 拥有自动定义的 UNIQUE 约束
​
2、外键约束(FOREIGN KEY):
一张表的外键是另一张表的主键,所以两张表就形成了关联关系。
外键取值规则:空值或参照的主键值。
(1)插入非空值时,如果主键表中没有这个值,则不能插入。
(2)更新时,不能改为主键表中没有的值。
(3)删除主键表记录时,你可以在建外键时选定外键记录一起级联删除还是拒绝删除。
(4)更新主键记录时,同样有级联更新和拒绝执行的选择。
​
3、mysql数据库中的主键和外键的作用:
-------->简而言之,SQL的主键和外键就是对表起约束作用。
主键是能确定一条记录的唯一标识,比如,一条记录包括身份正号,姓名,年龄。身份证号是唯一能确定你这个人的,其他都可能有重复,所以,身份证号是主键。
外键用于与另一张表的关联。是能确定另一张表记录的字段,用于保持数据的一致性。
比如,A表中的一个字段,是B表的主键,那他就可以是A表的外键。
​
主表和从表:
​
主表(父表)
在数据库中建立的表格即Table,其中存在主键(primary key)用于与其它表相关联,并且作为在主表中的唯一性标识。
从表(子表)
以主表的主键(primary key)值为外键 (Foreign Key)的表,可以通过外键与主表进行关联查询。从表与主表通过外键进行关联查询。
关系及用法概述
从表数据依赖于主表,一般最后查询数据时把主表与从表进行关联查询。

最新的11-29号更新

12-1update,图中需要注明1-1,N-N的关系

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/470596.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux:Gitlab:16.9.2 创建用户及项目仓库基础操作(2)

我在上一章介绍了基本的搭建以及邮箱配置 Linux:Gitlab:16.9.2 (rpm包) 部署及基础操作(1)-CSDN博客https://blog.csdn.net/w14768855/article/details/136821311?spm1001.2014.3001.5501 本章介绍一下用户的创建,组内设置用户&…

工控机丨工业平板电脑丨工业计算机丨零售行业应用

工控机是一种专门用于工业控制、自动化和数据采集的计算机设备,它具有高可靠性、稳定性和耐用性的特点,常常被用于各种工业场景中。然而,随着科技的发展和应用场景的不断拓展,工控机在零售行业中也有着广泛的应用。下面将从以下几…

退出或关闭Android Studio中的Coverage功能

使用原因: 今天在运行代码的时候,不想在idea中再复制一遍了,就想着在Android Studio中运行一下试试。后来发现只能运行Coverage才能在控制台打印结果。那么运行完之后如何取消呢? 我们可以找到app下拉 找到Edit Configuration&am…

ansible Playbook案例 安装nginx

目录 核心元素基本组件举例命令行也 是可以创建文件的编辑nginx.yml 运行前三部曲 核心元素 Playbook的核心元素: Hosts:主机组; Tasks:任务列表; Variables:变量,设置方式有四种;…

IDEA 配置阿里规范检测

IDEA中安装插件 配置代码风格检查规范 使用代码风格检测 在代码类中,右键 然后会给出一些不符合规范的修改建议: 保存代码时自动格式化代码 安装插件: 配置插件:

Wordpress站点通过修改.htaccess 设置重定向实现强制 https 访问

要在WordPress站点上通过修改.htaccess文件实现强制HTTPS访问,您可以按照以下步骤进行操作: 登录到WordPress站点管理后台。 在文件管理器或通过FTP访问网站根目录,找到并打开名为 .htaccess 的文件。 在打开的文件中添加以下代码&#xf…

Covalent Network借助大规模的历史Web3数据集,推动人工智能发展

人工智能在众多领域中增强了区块链的实用性,反之亦然,区块链确保了 AI 模型所使用的数据的来源和质量。人工智能带来的生产力提升,将与区块链系统固有的安全性和透明度融合。 Covalent Network(CQT)正位于这两项互补技…

09-新热文章-实时计算-黑马头条

热点文章-实时计算 1 今日内容 1.1 定时计算与实时计算 1.2 今日内容 kafkaStream 什么是流式计算 kafkaStream概述 kafkaStream入门案例 Springboot集成kafkaStream 实时计算 用户行为发送消息 kafkaStream聚合处理消息 更新文章行为数量 替换热点文章数据 2 实时…

Linux之线程同步

目录 一、问题引入 二、实现线程同步的方案——条件变量 1、常用接口&#xff1a; 2、使用示例 一、问题引入 我们再次看看上次讲到的多线程抢票的代码&#xff1a;这次我们让一个线程抢完票之后不去做任何事。 #include <iostream> #include <unistd.h> #inc…

前端项目,个人笔记(二)【Vue-cli - 引入阿里矢量库图标 + 吸顶交互 + setup语法糖】

目录 1、项目中引入阿里矢量库图标 2、实现吸顶交互 3、语法糖--<script setup> 3.1、无需return 3.2、子组件接收父组件的值-props的使用 3.3、注册组件 1、项目中引入阿里矢量库图标 步骤一&#xff1a;进入阿里矢量库官网中&#xff1a;iconfont-阿里巴巴矢量…

2023年中国电商市场研究报告

研究范畴界定为中国国内2C电商市场 ⚠️ 关键点&#xff1a; 流量红利减少&#xff0c;电商市场进入存量增量 竞争的发展阶段&#xff1b;新兴电商平台不断挑战现有头部电商平台行业地位&#xff1b;消费者更加趋于理性&#xff0c;更加关注低价和服务&#xff1b;市场趋势&…

vue3 搜索框 相关搜索内容 搜索词变色

html <!-- 搜索框 --> <div class"input"><input type"text" v-model"search_content" input"replace_text(search_content)"focus"search_show true, replace_text(search_content)" blur"search_s…

【爬虫】web自动化和接口自动化

专栏文章索引&#xff1a;爬虫 目录 一、介绍 二、推荐 1.接口自动化 2.Web自动化 一、介绍 爬虫技术一般可以分为两种类型&#xff1a;接口自动化和web自动化。下面是它们的简要介绍&#xff1a; 1.接口自动化 接口自动化技术的主要目的是通过模拟HTTP请求来实现自动化…

CSS 三大特性 详细讲解

CSS 三大特性及代码解释 层叠性 当相同选择器设置相同样式且发生冲突时&#xff0c;此时后者的样式会覆盖&#xff08;层叠&#xff09;前者冲突样式。CSS的层叠性就是用于解决样式冲突问题。 Input&#xff1a; <style>div {color: red;}div { color: blue; <!-…

第3章 物联网关键技术

物联网的核心是把物联到网上。物联网的系统架构自下而上分别是&#xff1a;底层——利用RFID等无线通信技术、传感器、二维码等随时随地获取物体的信息&#xff0c;感知世界的感知层主要完成信息的采集、转换和收集&#xff0c;中间层——用来传输数据的网络传输层&#xff0c;…

基础-笔试题6

1、tcp/udp是属于哪一层&#xff1f;tcp/udp有何优缺点&#xff1f; tcp /udp属于运输层 TCP 服务提供了数据流传输、可靠性、有效流控制、全双工操作和多路复用技术等。 与 TCP 不同&#xff0c; UDP 并不提供对 IP 协议的可靠机制、流控制以及错误恢复功能等。由于 UDP 比较…

基于nodejs+vue班级管理系统的设计与实现-flask-django-python-php

随着电子技术的普及和快速发展&#xff0c;线上管理系统被广泛的使用&#xff0c;有很多事业单位和商业机构都在实现电子信息化管理&#xff0c;班级管理系统也不例外&#xff0c;由比较传统的人工管理转向了电子化、信息化、系统化的管理。随着互联网技术的高速发展&#xff0…

【QT实现下载功能】通过request请求下载并保存到本地

想要做一个带有向http请求并获得内容功能的软件&#xff0c;通过寻找网上的示例&#xff0c;了解了想要实现这个功能&#xff0c;主要有几个部分要点&#xff1a; 1.联网&#xff08;要勾选添加QNetwork库&#xff09; 2.向http请求内容&#xff08;发request&#xff09; 3.获…

蓝桥杯刷题|04普及-真题

[蓝桥杯 2018 省 B] 螺旋折线 题目描述 如图所示的螺旋折线经过平面上所有整点恰好一次。 对于整点 (X,Y)&#xff0c;我们定义它到原点的距离 dis(X,Y) 是从原点到(X,Y) 的螺旋折线段的长度。 例如 dis(0,1)3&#xff0c;dis(−2,−1)9。 给出整点坐标 (X,Y)&#xff0c;你…

CentOS 7.9 常用环境配置

文章目录 环境准备安装docker安装Java安装maven安装git安装MYSQL安装Redis安装RabbitMq安装minio 环境准备 操作系统版本为centos 7.9&#xff0c;内核版本需要在3.10以上 sudo uname -rsudo cat /etc/redhat-release1.确认环境好后&#xff0c;安装工具包并设置仓库 sudo yum…