课设系统篇

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

数据库 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的关系

词汇统计系统是一个使用C语言开发的课设项目。该系统的主要功能是统计一文本文件中的词汇数量、频率以及出现位置等信息。 项目的首要任务是读取文本文件,并将文本数据存储到程序中进行处理。该系统需要提供一个简单的用户界面,以方便用户选择要处理的文本文件。用户可以通过输入文件名或者通过浏览功能来选择文件。系统会根据用户选择的文件进行读取和处理。 在读取完文件后,系统会将文本内容进行解析,提取出其中的单词。解析的过程中需要考虑到各种特殊字符和标点符号的情况,确保正确地将单词提取出来。同时,还需要对单词进行转换成小写字母的处理,以避免同一单词的不同大小写形式被当作不同的词汇。 接下来,系统会统计每个单词在文本中出现的频率,并将这些信息保存到数据结构中。常用的数据结构有哈希表和数组等,可以根据实际需求来选择合适的数据结构。统计完成后,系统会将结果进行排序,以便用户查看频率最高的单词。 除了频率,系统还可以提供其他有用的统计信息,如单词的总数、不重复单词的数量以及每个单词在文本中出现的位置。这些信息可以帮助用户更全面地了解文本的内容。 最后,该系统还可以提供一些额外的功能,如保存统计结果到文件、导入其他文件进行统计、显示统计结果的图表等。 总之,词汇统计系统是一个使用C语言开发的课设项目,它可以帮助用户统计文本文件中的词汇数量、频率和位置等信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值