数据库课程设计报告 超市会员管理系统
一、系统简介
1.1设计背景
受到科学技术的推动,全球计算机的软硬件技术迅速发展,以计算机为基础支撑的信息化如今已成为现代企业的一个重要标志与衡量企业综合实力的重要标准,并且正在悄无声息的影响与改变着国内外广泛的中小型企业的运营模式。针对于居民日常生活无法离开的超市,卖家市场蓬勃快速发展且竞争激烈,各个商家不断推陈出新各种活动,力求争取更多的忠实用户,而会员管理系统正是商家留得客户的首选,并且正在被越来越多的企业应用于消费管理领域。随着众多企业管理者对管理信息系统的重视程度的提高,超市会员管理系统的管理功能也在不断的增强,发挥着越来越重要的作用,从简单的数据浏览、添加、修改到超大数量的数据存储、数据的精确计算、积分换礼、报表的自动化生成、人性化的友好界面操作,大大提高了企业员工的工作效率以及规范企业的多层次全方位管理,帮助拓宽企业与外界之间的交流范围,缩短交流的时间,丰富交流方式,并且协助维护企业与社会之间的良好关系。
1.2开发意义
随着我国经济的高速发展,人民生活水平的不断提高,线上与线下购物已经成为居民生活中不可或缺的一部分。超市会员管理系统的诞生,使管理员可以借助网络管理轻松实现信息资源的集中统一处理与有效资源共享用以提高管理水平与经济效益。通过此项目的研究与实践,超市会员可以在网络上查询自己实时的会员积分与商家发布更新的各类积分有礼兑换活动,使网络管理为会员提供了一个方便快捷的自我管理环境。而商家可以利用系统对会员信息进行更有效,更规范的管理,例如对会员信息的添加、修改。超市会员管理系统的使用商家不受时间与地理位置的限制,一方面管理上更加规范,而且很大程度上提高了超市会员管理的效率,不再像过去的手工操作浪费时间、人力以及物力,另一方面增强了居民的购物意愿,提高了消费内需,促进了经济的持续稳定发展,实现了经济效益与社会服务的共同发展。
1.3系统开发及运行环境
系统开发平台:Microsoft Visual Studio 2008
系统开发语言:SQL语言
数据库与管理系统软件:SQL Server 2008 R2
运行平台:Windows 8及以上
二、需求分析
2.1超市会员管理系统需求分析
超市会员管理系统的开发主要目的是为了方便管理员对顾客消费的所有信息的管理,同时可以提供给顾客更多的优惠信息,提高顾客的购物热情,因此我们的超市会员管理系统主要实现以下四个功能:会员基本信息的查询功能、会员基本信息的管理功能、会员消费信息的管理功能、超市货物库存的统计功能。
(1)会员基本信息的查询功能:主要包括为管理员对会员各类信息的查询以及会员本身对会员信息的查询,管理员与顾客都可以通过线上网络的不同界面查询会员的相关信息,用以了解会员的等级、消费情况与优惠力度等;
(2)会员基本信息的管理功能:主要包括为管理员对会员各类信息的管理,详细包括会员的编号、姓名、性别、联系方式、会员等级等,可以做到对会员信息进行修改、删除、更新、添加等操作;
(3) 会员消费信息的管理功能:主要包括为超市会员在超市中的消费记录,详细包括会员购买的商品及其相关信息,购买时间、商品编号、购买数量、商品单价、商品金额等等,管理员可以对会员消费信息进行添加、更新、删除等操作;
(4)超市商品库存的统计功能:主要包括为超市商品的库存的基本信息,详细包括商品的商品编号、商品名称、库存量、商品价格等信息,同时管理员可根据市场情况随时调整我们的商品价格。
2.2超市会员管理系统可行性分析
受基本条件与系统面向群体所限制,学生无法获得非常深入的需求信息,也缺少直截了当的与客户沟通交流的机会,因此本人在已知需求的基础上,结合周边调研访问结果进行适当的推理延伸。针对本超市会员管理系统,从技术可行性来看,本系统对硬件、软件的性能要求、环境条件以及技术人员的水平都在目前平均水平可以接受的范围之内;从经济可行性来看,本系统数据库的设计无需消耗大量资源且无需昂贵的软硬件设施,并且市场前景良好,具有可预见的经济价值;从社会可行性来看,本系统数据库无冲突社会道德以及国家法律等问题,且符合人民日益增长的美好需要的要求,对于提高消费内需,促进经济的持续稳定发展发挥着明显的正向作用。综上,该数据库系统项目在各个方面均满足可行性条件。
2.3用例图
管理员用例图:
会员用例图:
2.4系统功能结构图
三、概念结构设计
3.1 E-R图
3.2 数据字典
1)数据项
数据项名称 | 数据类型 | 数据长度 | 取值范围 | 取值含义 |
NUMBER | CHAR | 10 | 会员编号 | |
NAME | CHAR | 10 | 姓名 | |
SEX | NCHAR | 10 | 男/女,默认值为男 | 性别 |
TEL | CHAR | 10 | 电话号码 | |
GRADE | CHAR | 10 | 会员等级 | |
GNUM | CHAR | 10 | 商品编号 | |
GNAME | CHAR | 10 | 商品名称 | |
UP | FLOAT | UP>=0 | 商品单价 | |
GS | CHAR | 10 | 商品库存 | |
ONUM | CHAR | 10 | 购物单编号 | |
DATE | DATE | 消费日期 | ||
QTY | INT | 数量 | ||
UNDIS | FLOAT | 10 | UNDIS>=0 | 折扣前金额 |
DIS | FLOAT | 10 | DIS>=0 | 折扣后金额 |
DISCOUNT | CHAR | 10 | 会员折扣 |
2)数据结构
数据结构名 | 组成 | 说明 |
会员表 | NUMBER,NAME,SEX,TEL,GRADE | 会员基本信息 |
商品表 | GNUM,GNAME,UP,GS | 商品基本信息 |
购物单表 | ONUM,GNUM,DATE,QTY,UP, UNDIS | 超市购物单信息 |
会员购物表 | NUMERB,ONUM,GNUM,DIS | 会员消费信息 |
会员优惠表 | GRADE,DISCOUNT | 会员优惠信息 |
四、逻辑结构设计
会员(会员编号,姓名,性别,电话号码,会员等级)
商品(商品编号,商品名称,商品单价,商品库存)
购物单(购物单编号,商品编号,消费日期,数量,商品单价,折扣前金额)
会员购物(会员编号,购物单编号,商品编号,折扣后金额)
会员优惠(会员等级,会员折扣)
!注:下划线的为主键
五、物理设计
5.1基本表
1)会员表【MEMBER】:NUMBER(会员编号),NAME(姓名),SEX(性别),
TEL(电话号码),GRADE(会员等级)
2)商品表【GOODS】: GNUM(商品编号),GNAME(商品名称),UP(商品单价),
GS(商品库存)
3)购物单表【LIST】 :ONUM(购物单编号),GNUM(商品编号),
DATE(消费日期),QTY(数量),UP(商品单价),
UNDIS(折扣前金额)
4)会员购物表【MLIST】: NUMERB(会员编号),ONUM(购物单编号),
GNUM(商品编号),DIS(折扣后金额)
5)会员优惠表【DISCOUNT】:GRADE(会员等级),DISCOUNT(会员折扣)
5.2完整性约束
5.2.1实体完整性约束
1)将MEMBER表的NUMBER设置为主键:
ALTER TABLE MEMBERADD CONSTRAINT PK_M PRIMARY KEY(NUMBER)GO
2)将GOODS表的GNUM设置为主键:
ALTER TABLE GOODSADD CONSTRAINT PK_G PRIMARY KEY(GNUM)GO
3)将LIST表的ONUM与GNUM设置为主键:
ALTER TABLE LISTADD CONSTRAINT PK_L PRIMARY KEY(ONUM,GNUM)GO
4)将MLIST表的NUMERB、ONUM与GNUM设置为主键:
ALTER TABLE MLISTADD CONSTRAINT PK_ML PRIMARY KEY(ONUM,GNUM,NUMBER)GO
5)将DISCOUNT表中的GRADE设置为主键:
ALTER TABLE DISCOUNTADD CONSTRAINT PK_D PRIMARY KEY(GRADE)GO
5.2.2参照完整性
1)创建表MEMBER和表MLIST之间的参照关系
AlTER TABLE MLIST WITH NOCHECKADD CONSTRAINT FK_M_ML FOREIGN KEY(NUMBER)REFERENCES MEMBER(NUMBER)ON UPDATE CASCADEGO
2)创建表GOODS和表MLIST之间的参照关系
AlTER TABLE MLIST WITH NOCHECKADD CONSTRAINT FK_G_ML FOREIGN KEY(GNUM)REFERENCES GOODS(GNUM)ON UPDATE CASCADEGO
3)创建表GOODS和表LIST之间的参照关系
AlTER TABLE LIST WITH NOCHECKADD CONSTRAINT FK_G_L FOREIGN KEY(GNUM)REFERENCES GOODS(GNUM)ON UPDATE CASCADEGO
4)创建表LIST和表MLIST之间的参照关系
AlTER TABLE MLIST WITH NOCHECKADD CONSTRAINT FK_L_ML FOREIGN KEY(ONUM) REFERENCES LIST(ONUM)ON UPDATE CASCADEGO
5.2.3用户自定义完整性
1)为表MEMBER中的SEX设置DEFAULT约束,并利用CHECK约束将SEX限定取值:
ALTER TABLE MEMBERADD CONSTRAINT DEFAULT_SEX DEFAULT '男' FOR SEXGOALTER TABLE MEMBERADD CONSTRAINT CHECK_SEX CHECK(SEX='男' OR SEX='女')GO
2)检查商品表GOODS,商品单价是否符合要求:
ALTER TABLE GOODS WITH CHECKADD CONSTRAINT CHECK_UP CHECK(UP>=0)GO
3)检查购物单表LIST,商品单价是否符合要求:
ALTER TABLE LIST WITH CHECKADD CONSTRAINT CHECK_LIST CHECK(UP>=0)GO
4)检查购物单表LIST,折扣前金额是否符合要求:
ALTER TABLE LIST WITH CHECKADD CONSTRAINT CHECK_LIST2 CHECK(UNDIS>=0)GO
5)检查购物单表MLIST,折扣后金额是否符合要求:
ALTER TABLE MLIST WITH CHECKADD CONSTRAINT CHECK_MLIST CHECK(DIS>=0)GO
5.3数据库视图
六、功能实现
6.1 系统的主要查询功能
1)查询系统中姓名为“赵钱”的会员的基本信息:
USE MARKETGOSELECT * FROM MEMBER WHERE NAME='赵钱'GO
2)查询系统中会员等级为VIP2的折扣信息:
USE MARKETGOSELECT * FROM DISCOUNT WHERE GRADE='VIP2'GO
3)查询系统中商品编号为003的商品的单价:
USE MARKETGOSELECT UP FROM GOODS WHERE GNUM='003'GO
4)查询系统中会员编号为M4的会员的购买记录:
USE MARKETGOSELECT * FROM MLIST WHERE NUMBER='M4'GO
5)查询系统中购物单号为V4购买的商品信息:
USE MARKETGOSELECT * FROM GOODS WHERE GNUM IN(SELECT GNUM FROM LIST WHERE ONUM='V4')GO
6)查询系统中会员编号为M3的详细购物信息:
USE MARKETGOSELECT * FROM LIST WHERE ONUM IN(SELECT ONUM FROM MLIST WHERE NUMBER='M3')GO
6.2 系统的主要插入、更新、删除功能
1)在表MEMBER中增加一条会员记录(会员编号:M5;姓名:付琪;性别:女;电话:137;会员等级:VIP5)
USE MARKETGOINSERT INTO MEMBER(NUMBER,NAME,SEX,TEL,GRADE)VALUES('M5','付琪', '女','137','VIP5')
2)在表MEMBER中更新会员编号,表MLIST与中的会员编号也会级联更新,将会员编号为M1的会员编号改为M6:
USE MARKETUPDATE MEMBERSET NUMBER='M6' WHERE NUMBER='M1'GO
6.3 创建触发器、存储过程
1)创建触发器:当会员编号被删除时,该会员的消费记录与消费明细也会级联删除:
CREATE TRIGGER TRIGGER_NUMBERON MEMBER FOR DELETEASDECLARE @NUM_DEL CHAR(10)SELECT @NUM_DEL=NUMBER FROM DELETEDDELETE FROM MLIST WHERE NUMBER=@NUM_DELDELETE FROM LISTWHERE ONUM IN (SELECT ONUM FROM MLIST WHERE NUMBER=@NUM_DEL)GO
2)创建触发器:当商品编号被删除时,该商品的相关消费记录也会级联删除:
CREATE TRIGGER TRIGGER_GNUMON GOODS FOR DELETEASDECLARE @GNUM_DEL CHAR(10)SELECT @GUNM_DEL=GNUM FROM DELETEDDELETE FROM MLIST WHERE GNUM=@GNUM_DELDELETE FROM LISTWHERE GNUM IN (SELECT GNUM FROM MLIST WHERE GNUM=@GNUM_DEL)GO
3)创建触发器:当修改GOODS表的商品编号时,要检查GOODS表中是否存在与该编号相同的记录,若存在则不允许修改,若不存在则可修改:
CREATE TRIGGER TRIGGER_GOODSON GOODS FOR UPDATE AS IF UPDATE(GNUM)BEGINDECLARE @GNUM_NEW CHAR(10),@GNUM_OLD CHAR(10),@GNUM_CNT INTSELECT @GNUM_OLD=GNUM FROM DELETEDSELECT @GNUM_CNT=COUNT(*) FROM GOODS WHERE GNUM=@GNUM_OLDIF @GNUM_CNT<>0ROLLBACK TRANSACTIONEND
4)创建存储过程:根据会员姓名查询会员编号:
CREATE PROCEDURE Pro_MEM@NAME_IN CHAR(10),@NUM_OUT CHAR(10) OUTPUTAS SELECT @NUM_OUT=NUMBER FROM MEMBERWHERE @NAME_IN=NAMEGODECLARE @NAME_IN CHAR(10),@NUM_OUT CHAR(10)SELECT @NAME_IN='孙李'EXEC Pro_MEM @NAME_IN,@NUM_OUT OUTPUTPRINT '会员编号为:'+CONVERT(VARCHAR,@NUM_OUT)
执行结果:M2
5)创建存储过程:根据购物单编号与商品编号查询消费日期:
CREATE PROCEDURE Pro_D@DATE_OUT DATE OUTPUT,@ONUM_IN CHAR(10),@GNUM_IN CHAR(10)AS SELECT @DATE_OUT=DATE FROM LISTWHERE @ONUM_IN=ONUM AND @GNUM_IN=GNUMGODECLARE @DATE_OUT DATE ,@ONUM_IN CHAR(10),@GNUM_IN CHAR(10)SELECT @ONUM_IN='V5'SELECT @GNUM_IN='005'EXEC Pro_D @DATE_OUT OUTPUT,@ONUM_IN,@GNUM_INPRINT '消费日期为:'+CONVERT(VARCHAR,@DATE_OUT)
执行结果:2023-07-07
6)创建存储过程:根据商品名称统计商品售出数量:
CREATE PROCEDURE Pro_GOODS@GNAME_IN CHAR(10),@QTY_OUT INT OUTPUTAS SELECT @QTY_OUT=SUM(QTY) FROM LISTWHERE GNUM IN (SELECT GNUM FROM GOODS WHERE @GNAME_IN=GNAME)GODECLARE@GNAME_IN CHAR(10),@QTY_OUT INTSELECT @GNAME_IN='卷纸'EXEC Pro_GOODS @GNAME_IN,@QTY_OUT OUTPUTPRINT '售出数量为:'+CONVERT(VARCHAR,@QTY_OUT)
执行结果:1
7)创建存储过程:计算某一会员至今所有购物的优惠金额,根据该存储过程的结果,超市管理员可对比商品成本与利润相应调整会员优惠折扣力度:
CREATE PROCEDURE Pro_DIS@NUM_IN CHAR(10),@UNDIS_OUT FLOAT OUTPUT,@DIS_OUT FLOAT OUTPUTASSELECT @UNDIS_OUT=SUM(UNDIS) FROM LISTWHERE ONUM IN(SELECT ONUM FROM MLIST WHERE @NUM_IN=NUMBER)SELECT @DIS_OUT=SUM(DIS) FROM MLISTWHERE @NUM_IN=NUMBERGODECLARE @NUM_IN CHAR(10),@UNDIS_OUT FLOAT,@DIS_OUT FLOATSELECT @NUM_IN='M1'EXEC Pro_DIS @NUM_IN,@UNDIS_OUT OUTPUT,@DIS_OUT OUTPUTPRINT '至今已优惠金额为:'+CONVERT(VARCHAR,@UNDIS_OUT-@DIS_OUT)
执行结果:12.06
七、第七次实验课心得
最后一次实验课的课程中,根据老师要求需要我们重点区分两类空间数据,即SQL SERVER 2008新增的两类空间数据类型:大地向量空间类型(geography)和几何平面向量空间类型(geometry),根据官方定义:geography数据类型为空间数据提供了一个由经度和纬度联合定义的存储结构;geometry数据类型为空间数据提供了一个存储结构,它是由任意平面上的坐标定义的。
因此,由上述定义我们就可以轻松判断出,我们应该根据我们特定的需要来选择使用相应的空间数据类型,例如存储经纬度坐标数据,我们就应该使用geography,而如果是存储任意平面上定义的坐标数据,我们就应该使用geometry。
除此之外,geography作为一个我们未来专业或许需要经常使用但如今我们又相对较为陌生的数据类型来说,拥有更多需要我们注意与了解的特点,通过课堂学习、实际操作与网络搜索可以得到:geography分为Point、LineString与Polygon三种类型的实例,不同的实例的建立具有他们不同的类型、用法与前提条件;空间引用标识符(SRID)同样是geography中非常重要的一个概念,我们可以简单将每个数据的SRID理解为它们特殊的单位,只有拥有相同单位的数据,我们才可以进行代数或其它的操作;最后,是数据类型的方向问题,这也是我们在课堂上重点强调的一个方面,对于geometry数据来说,我们无需考虑某一实例的方向,但对于geography数据,我们不仅要指定环实例的顺逆时针方向,而且必须明确指出其它实例相对于环的具体位置。
以上都是我们在具体使用SQL SERVER 2008新增的两类空间数据类型时需要特别注意的几个方面,我深知自身如今的学习深度与学习时间还远远无法达到完全熟练掌握这两类数据类型,但希望能为今后的学习打下一定的基础并在未来继续更深入的探索。
相关文章:

数据库课程设计报告 超市会员管理系统
一、系统简介 1.1设计背景 受到科学技术的推动,全球计算机的软硬件技术迅速发展,以计算机为基础支撑的信息化如今已成为现代企业的一个重要标志与衡量企业综合实力的重要标准,并且正在悄无声息的影响与改变着国内外广泛的中小型企业的运营模…...

C++算法练习-day54——39.组合总和
题目来源:. - 力扣(LeetCode) 题目思路分析 题目:给定一个整数数组 candidates 和一个目标数 target,找出所有独特的组合,这些组合中的数字之和等于 target。每个数字在每个组合中只能使用一次。 思路&a…...

计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...

Linux的文件系统
这里写目录标题 一.文件系统的基本组成索引节点目录项文件数据的存储扇区三个存储区域 二.虚拟文件系统文件系统分类进程文件表读写过程 三.文件的存储连续空间存放方式缺点 非连续空间存放方式链表方式隐式链表缺点显示链接 索引数据库缺陷索引的方式优点:多级索引…...

【Vue3】从零开始创建一个VUE项目
【Vue3】从零开始创建一个VUE项目 手动创建VUE项目附录 package.json文件报错处理: Failed to get response from https://registry.npmjs.org/vue-cli-version-marker 相关链接: 【VUE3】【Naive UI】<NCard> 标签 【VUE3】【Naive UI】&…...

9)语法分析:半倒装和全倒装
在英语中,倒装是一种特殊的句子结构,其中主语和谓语(或助动词)的位置被颠倒。倒装分为部分倒装和全倒装两种类型,它们的主要区别在于倒装的程度和使用的场合。 1. 部分倒装 (Partial Inversion) 部分倒装是指将助动词…...

Scala关于成绩的常规操作
score.txt中的数据: 姓名,语文,数学,英语 张伟,87,92,88 李娜,90,85,95 王强,78,90,82 赵敏,92,8…...

使用Java实现度分秒坐标转十进制度的实践
目录 前言 一、度分秒的使用场景 1、表示方法 2、两者的转换方法 3、区别及使用场景 二、Java代码转换的实现 1、确定计算值的符号 2、数值的清洗 3、度分秒转换 4、转换实例 三、总结 前言 在地理信息系统(GIS)、导航、测绘等领域,…...

根据后台数据结构,构建搜索目录树
效果图: 数据源 const data [{"categoryidf": "761525000288210944","categoryids": "766314364226637824","menunamef": "经济运行","menunames": "经济运行总览","tempn…...

食品计算—FoodSAM: Any Food Segmentation
🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…...

2411rust,1.83
原文 1.83.0稳定版 新的常能力 此版本包括几个说明在常环境中运行代码可干的活的大型扩展.这是指编译器在编译时必须计算的所有代码:常和静项的初值,数组长度,枚举判定值,常模板参数及可从(constfn)此类环境调用的函数. 引用静.当前,除了静项的初化器式外,禁止常环境引用静…...

tomcat加载三方包顺序
共享库 tomcat支持多个webapp共享一个三方库,而不需要每个webapp都引入该三方库 tomcat加载类顺序 bootstrap:加载jvm提供的类system:加载$CATALINA_HOME/bin下的bootstrap.jar,commons-daemon.jar,tomcat-juli.jar三个包//加载$CLASSPATH…...

计算机的错误计算(一百七十一)
摘要 探讨 MATLAB 中秦九韶(Horner)多项式的错误计算。 例1. 用秦九韶(Horner)算法计算(一百零七)例1中多项式 直接贴图吧: 这样,MATLAB 给出的仍然是错误结果,因为准…...

js对于json的序列化、反序列化有哪几种方法
在JavaScript中,对JSON(JavaScript Object Notation)进行序列化(将对象转换为JSON字符串)和反序列化(将JSON字符串转换为对象)是常见的操作。以下是一些常用的方法: 序列化…...

Linux——基础命令(2) 文件内容操作
目录 编辑 文件内容操作 1.Vim (1)移动光标 (2)复制 (3)剪切 (4)删除 (5)粘贴 (6)替换,撤销,查找 (7ÿ…...

简单搭建qiankun的主应用和子应用并且用Docker进行服务器部署
在node18环境下,用react18创建qiankun主应用和两个子应用,react路由用V6版本,都在/main路由下访问子应用,用Dockerfile部署到腾讯云CentOS7.6服务器的8000端口进行访问,且在部署过程中进行nginx配置以进行合理的路由访…...

Python知识分享第十六天
“”" 故事7: 小明把煎饼果子技术传给徒弟的同时, 不想把独创配方传给他, 我们就要加私有. 问: 既然不想让子类用, 为什么要加私有? 答: 私有的目的不是不让子类用, 而是不让子类直接用, 而必须通过特定的 途径或者方式才能使用. 大白话: ATM机为啥要设计那么繁琐, 直接…...

管家婆财贸ERP BR045.大类存货库存数量明细表
最低适用版本: C系列 23.8 插件简要功能说明: 库存数量明细表支持按存货展示数据更多细节描述见下方详细文档 插件操作视频: 进销存类定制插件--大类存货库存数量明细表 插件详细功能文档: 应用中心增加菜单【大类存货库存数…...

Pytorch-GPU版本离线安装
最近在复现一项深度学习的工作,发现自己的pytorch是装的cpu版的(好像当时是直接加清华源,默认是cpu版本)。从官网在线下载速度太慢,还时不时断开连接,我们可以配置conda的清华源去这个问题,但是考虑到是在用…...

k8s 1.28 二进制安装与部署
第一步 :配置Linux服务器 #借助梯子工具 192.168.196.100 1C8G kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubectl、haproxy、keepalived 192.168.196.101 1C8G kube-apiserver、kube-controller-manager、kube-scheduler、etcd、kubectl、…...

【C语言】扫雷游戏(一)
我们先设计一个简单的9*9棋盘并有10个雷的扫雷游戏。 1,可以用数组存放,如果有雷就用1表示,没雷就用0表示。 2,排查(2,5)这个坐标时,我们访问周围的⼀圈8个位置黄色统计周围雷的个数是1。排查(8,6)这个坐标时…...

二分法篇——于上下边界的扭转压缩间,窥见正解辉映之光(1)
前言 二分法,这一看似简单却又充满哲理的算法,犹如一道精巧的数学之门,带领我们在问题的迷雾中找到清晰的道路。它的名字虽简单,却深藏着智慧的光辉。在科学的浩瀚星空中,二分法如一颗璀璨的星辰,指引着我们…...

# 01_Python基础到实战一飞冲天(三)--python面向对象(一)--简单类
01_Python基础到实战一飞冲天(三)–python面向对象(一)–简单类 一、面向对象-01-基本概念 1、面向对象(OOP) 面向对象编程 —— Object Oriented Programming 简写 OOP。 2、面向对象(OOP) 学习目标 了解 面向对象 基本概念…...

sentinel使用手册
1.引入依赖 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-sentinel</artifactId></dependency>2.yaml spring:cloud:sentinel:transport:dashboard: localhost:8090 #sentinel控制台地址…...

搜索二维矩阵 II(java)
题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。每列的元素从上到下升序排列。 代码思路: 用暴力算法: class Solution {public boolean searchMatrix(…...

Python语法基础(四)
🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 高阶函数之map 高阶函数就是说,A函数作为B函数的参数,B函数就是高阶函数 map:映射 map(func,iterable) 这个是map的基本语法,…...

03_Django视图
三、Django模板 模板Templates 在Django框架中,模板是可以帮助开发者快速生成呈现给用户页面的工具 模板的设计方式实现了我们MVT中VT的解耦(M:Model,V:View,T:Template),VT有着N:M的关系,一个V可以调用任意T…...

如何从 Hugging Face 数据集中随机采样数据并保存为新的 Arrow 文件
如何从 Hugging Face 数据集中随机采样数据并保存为新的 Arrow 文件 在使用 Hugging Face 的数据集进行模型训练时,有时我们并不需要整个数据集,尤其是当数据集非常大时。为了节省存储空间和提高训练效率,我们可以从数据集中随机采样一部分数…...

11 设计模式之代理模式(送资料案例)
一、什么是代理模式? 在现实生活中,我们常常遇到这样的场景:由于某些原因,我们可能无法亲自完成某个任务,便会委托他人代为执行。在设计模式中,代理模式 就是用来解决这种“委托”问题的࿰…...

MongoDB聚合操作
1.聚合操作 聚合操作处理数据记录并返回计算结果。聚合操作组值来自多个文档,可以对分组数据执行各种操作以返回单个结果。聚合操作包含三类:单一作用聚合、聚合管道、MapReduce。 单一作用聚合:提供了对常见聚合过程的简单访问,…...