zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

基于 C++和 MySQL 实现(控制台)汽销售管理系统【100010538】

mysqlC++管理系统 实现 基于 控制台 销售
2023-09-11 14:17:49 时间

数据库系统 课程设计报告

汽销售管理系统

开发环境与开发具
开发环境:windows
开发具:mysql 3.7.31, mysql workbench, visual studio 2017

系统需求分析
2.1 功能分析
基础信息管理:
商信息管理:查询、增、删、改 型信息管理:查询、增、删、改客信息管理:查询、增、删、改 进货管理:
辆采购信息的管理:查询、增、删、改
辆库信息的管理:查询、增、删、改 销售管理:
辆销售:客可以根据的需求,选择不同型号的型收益统计:商按照所出售的辆数量及价格进统计 仓库管理:
仓库明细:库存各种型号的辆的详细信息进销存统计:对辆的出售与进货进统计

2.2 数据字典 以下为系统的数据结构:

编号数据结构名属性
1客 customer客 ID,姓名,性别,电话
2商 industry商 ID,进货辆数,出货辆数,库存辆数,总利润
3辆 car辆 ID,辆型号,利润
4购买 purchase辆型号,客 ID,商 ID,数量
5拥有 possess辆型号,数量,商 ID

数据库关系模式设计
In_amount, Out_amount, Remain_amount, Total_profit均初始化为0。
这是商和汽之间的Relationship,在我们设计的数据库中要求某种汽只能被特定商销售,如car_name为Toyota时只能被Industry_ID为"本"售卖,所以这个表的主码为car_name。
这是商和客之间购买的Relationship,我们将属性customer_ID和industry_ID分别设置外码约束来保证数据库完整性,注意这客购买的是某个汽品牌并该品牌中的哪辆。

数据库物理结构设计

else{; 
printf("您有以下厂商可供选择:\n");;   
char strquery[200] = "select industry_ID from industry";
mysql_query(&mysql, strquery);
result = mysql_store_result(&mysql);
MYSQL_ROW row;;
row = mysql_fetch_row(result); 
if (row == NULL){;
printf("当前系统中不存在厂商。\n\n");;
return -1;;       
};
while (row != NULL){   
printf("%s\t", row[0]);   
row = mysql_fetch_row(result);;   
};        if (mysql_errno(&mysql)){  
fprintf(stderr, "Error:%s\n", mysql_error(&mysql));   
return 0;;        };  
printf("\n 你想从哪个厂商购买车辆?请输入名称:");; 
char industry_ID[5];      
scanf("%s", industry_ID);         printf("\n"); 
char strquery1[200] = "select car_name,car_amount from possess where industry_ID='";         strcat(strquery1, industry_ID);  
strcat(strquery1, "'");  
mysql_query(&mysql, strquery1); 
result = mysql_store_result(&mysql);; 
row = mysql_fetch_row(result);   
if (row == NULL){;
printf("当前厂商没有车辆库存。\n\n");; 
return -1;;        };  
printf("当前厂商 %s 的车辆有:\n", industry_ID);;
while (row != NULL){      
printf("%-12s%s\n", row[0], row[1]);    
row = mysql_fetch_row(result);;    
};       
printf("请输入您想购买的车辆名称及数量:(以空格分隔)");   
char number[3];      
char name[10];         
scanf("%s", name);     
scanf("%s", number);;   
int number1 = number[0] - '0';; 
//更新 possess 表;    
update_possess_table(name, number, industry_ID, true, true);    
char* profit = (char*)malloc(sizeof(char) * 6);   
char temp_str[3] = "1";;   
while (number1--){;           
//删除 car 表中含有该车辆名称的第一行;           
delete_car_table_ID(name, profit);;            //更新 industry 表;            update_industry_table(industry_ID, temp_str, true, profit);;        };       
free(profit);;       
//更新 purchase 表,直接插入一行

update_purchase_table :更新 purchase 表,直接插

int update_purchase_table(char* ID, char* industry_ID, char* car_name, char* number)
//直接将客户ID,厂商ID,汽车品牌和购买数量插入purchase表,表示这次销售记录已经被系统保存

一、总结

语句的语法,例如 , , 等常数据库更新语句的使。(主要知识点分布在 Chapter 3,Chapter 4,Chapter 5)

根据客需求设计数据库的步骤在这次实验中都有体现,在概念设计阶段、逻辑设计阶段和物理设计阶段均运了理论和实验课上的知识。(知识点主要分布在 Chapter 6 和 Chapter 7)

使用了嵌式 SQL 进编程(Chapter 5),实现了使程序设计语访问数据库的功能。

♻️ 资源

在这里插入图片描述

大小: 10.4MB
➡️ 资源下载:https://download.csdn.net/download/s1t16/87400362