下面是自己用C#写的一个使用数据库实现订餐管理系统管理

(大神勿喷,初学者以借鉴为主)

一共分为三个类分别是:Program(启动类),Zhuang(封装操作语句类),Zuo(操作类)


数据库表(如下):

1.菜袋表

2.菜品表 

注意:菜袋表的dishMegs 和 菜品表的name 为主外键关系

3.管理员表 


代码部分(如下):

既然使用了数据库那么using还是要记得导入的呦:

using System.Data.SqlClient;
using System.Data;

Program(启动类):

    class Program{static void Main(string[] args){Zuo zuo = new Zuo();zuo.DengLu();Console.ReadLine();}}

Zhuang(封装操作语句类):

    class Zhuang{private const string CONNSTR = "server=.;database=Demo2;uid=sa;pwd=sa";private SqlConnection _conn;public SqlConnection Conn {get {if (_conn != null){if (_conn.State == ConnectionState.Broken || _conn.State == ConnectionState.Open){_conn.Close();}}else {_conn = new SqlConnection(CONNSTR);}_conn.Open();return _conn;}}private SqlCommand _cmd;public SqlCommand Cmd {get {_cmd = new SqlCommand();_cmd.Connection = Conn;return _cmd;}}//查询ExecuteReaderpublic SqlDataReader ExecuteReader(string sql) {SqlCommand cmd = Cmd;cmd.CommandText = sql;SqlDataReader reader =  cmd.ExecuteReader(CommandBehavior.CloseConnection);return reader;}//查询ExecuteScalarpublic object ExecuteScalar(string sql) {SqlCommand cmd = Cmd;cmd.CommandText = sql;object obj = cmd.ExecuteScalar();cmd.Connection.Close();return obj;}//增,删,改ExecuteNonQuerypublic int ExecuteNonQuery(string sql) {SqlCommand cmd = Cmd;cmd.CommandText = sql;int result = cmd.ExecuteNonQuery();cmd.Connection.Close();return result;}}

Zuo(操作类):

    class Zuo{Zhuang zhang = new Zhuang();//管理员登录#region  管理员登录public void DengLu() {Console.Write("请输入管理员用户名:");string username = Console.ReadLine();Console.Write("请输入管理员密码:");string password = Console.ReadLine();string sql = "SELECT username,[password] FROM GuanLi";SqlDataReader reader = zhang.ExecuteReader(sql);if (reader.HasRows) {while (reader.Read()){if (username.Equals(reader["username"]) && password.Equals(reader["password"])) {reader.Close();Console.WriteLine("登录成功!");CaiDan();return;}}}reader.Close();Console.WriteLine("登录失败!");return;}#endregion//菜单#region  菜单public void CaiDan() {bool huan = true;do {Console.WriteLine("\n************欢迎使用老明宇吃货联盟订单系统************");Console.WriteLine("1.我要订餐\n2.查看菜袋\n3.签收订单\n4.删除订单\n5.我要点赞\n6.退出系统");Console.WriteLine("******************************************************");Console.Write("请选择:");int xuanZe = int.Parse(Console.ReadLine());switch (xuanZe){case 1:Console.WriteLine("-->我要订餐");DingDan();continue;case 2:Console.WriteLine("-->查看菜袋");LookCaiDai();continue;case 3:Console.WriteLine("-->签收订单");QianShou();continue;case 4:Console.WriteLine("-->删除订单");DeleteDingDan();continue;case 5:Console.WriteLine("-->我要点赞");IZan();continue;case 6:Console.WriteLine("-->欢迎使用,感谢您的下次光临!");huan = false;break;default:Console.WriteLine("-->无该选项!");continue;}} while (huan);}#endregion//one:我要订餐#region  我要订餐public void DingDan() {Console.WriteLine("请输入订单人的姓名:");string names = Console.ReadLine();Console.WriteLine("序号\t菜名\t单价\t点赞数");string sql = "SELECT caiID,name,money,Zan FROM CaiDan";SqlDataReader reader = zhang.ExecuteReader(sql);if (reader.HasRows) {while (reader.Read()) {Console.WriteLine("{0}\t{1}\t{2}\t{3}",reader["caiID"],reader["name"], reader["money"], reader["Zan"]);}}reader.Close();Console.WriteLine("请输入您要点的菜品编号:");int bianHao = int.Parse(Console.ReadLine());SqlDataReader reader1 = zhang.ExecuteReader(sql);string caipinName = null;//菜品名称double danJia = 0.0;//菜品单价while (reader1.Read()) {if (bianHao == Convert.ToInt32(reader1["caiID"])) {caipinName = reader1["name"].ToString();danJia = Convert.ToDouble(reader1["money"]);break;}}if (caipinName == null) {Console.WriteLine("对不起,没有该编号!");return;}reader1.Close();Console.WriteLine("请输入您的需要的份数:");int fenShu = int.Parse(Console.ReadLine());Console.WriteLine("请输入送餐时间(送餐时间是10~20点间整点送餐):");int shiJian = int.Parse(Console.ReadLine());if (shiJian<10 || shiJian>20) {Console.WriteLine("对不起,因为任性我们只在10~20整点送餐!");return;}Console.WriteLine("请输入送货地址:");string diZhi = Console.ReadLine();  //状态中0表示以预定,1表示已完成double zje = 0.0;//总金额const int yunFei = 5;//运费if (danJia * fenShu < 50){zje = danJia * fenShu + yunFei;}else {zje = danJia * fenShu;}string sql1 = "INSERT INTO UserCaiDan VALUES ('"+names+"','"+ caipinName + "',"+ fenShu + ","+ shiJian + ",'"+ diZhi + "','0','"+ zje + "')";int result = zhang.ExecuteNonQuery(sql1);if (result == 1){Console.WriteLine("订单成功!");}else {Console.WriteLine("对不起,订单失败!");}FanHui();//返回}#endregion//two:查看菜袋#region  查看菜袋public void LookCaiDai() {Console.WriteLine("序号\t订单人\t餐品信息\t送餐日期\t送餐地址\t总金额\t订单状态");string sql = "SELECT userID,name,dishMegs,fenShu,times,address,states,sumPrices FROM UserCaiDan";SqlDataReader reader = zhang.ExecuteReader(sql);if (reader.HasRows) {while (reader.Read()) {string tai = Convert.ToInt32(reader["states"])==0 ? "已预定":"已完成";Console.WriteLine("{0}\t{1}\t{2}\t{3}\t\t{4}\t\t{5}\t{6}",reader["userID"], reader["name"], reader["dishMegs"].ToString()+reader["fenShu"]+"份", reader["times"], reader["address"], reader["sumPrices"], tai);}}reader.Close();FanHui();//返回}#endregion//three:签收订单#region  签收订单public void QianShou() {Console.WriteLine("请输入要签收的订单序号:");int xuHao = int.Parse(Console.ReadLine());string sql = "UPDATE UserCaiDan SET states = 1 WHERE userID = "+ xuHao + "";int gai = zhang.ExecuteNonQuery(sql);if (gai == 1){Console.WriteLine("签收成功!");}else {Console.WriteLine("对不起,签收失败!");}FanHui();//返回}#endregion//four:删除订单#region  删除订单public void DeleteDingDan() {Console.WriteLine("请输入要删除的订单序号:");int xuHao = int.Parse(Console.ReadLine());string sql1 = "SELECT userID FROM UserCaiDan";SqlDataReader reader = zhang.ExecuteReader(sql1);bool qianShou = true;//订单是否签收while (reader.Read()) {if (xuHao == Convert.ToInt32(reader["userID"])) {qianShou = false;break;}}reader.Close();if (qianShou){Console.WriteLine("对不起,没有找到该序号!");}else {string sql = "DELETE FROM UserCaiDan WHERE states = 1";int gai = zhang.ExecuteNonQuery(sql);if (gai == 1){Console.WriteLine("删除成功!");}else{Console.WriteLine("对不起,您选择的订单未签收,不可删除!");}}FanHui();//返回}#endregion//five:我要点赞#region  我要点赞public void IZan() {Console.WriteLine("序号\t菜名\t\t单价\t点赞数");string sql = "SELECT caiID,name,money,Zan FROM CaiDan";SqlDataReader reader = zhang.ExecuteReader(sql);if (reader.HasRows){while (reader.Read()){Console.WriteLine("{0}\t{1}\t{2}\t{3}", reader["caiID"], reader["name"], reader["money"], reader["Zan"]);}}reader.Close();Console.WriteLine("请输入您要点赞的菜品序号:");int bianHao = int.Parse(Console.ReadLine());SqlDataReader reader1 = zhang.ExecuteReader(sql);bool cunZai = true;while (reader1.Read()){if (bianHao == Convert.ToInt32(reader1["caiID"])){cunZai = false;break;}}if (cunZai){Console.WriteLine("对不起,没有该编号!");return;}reader1.Close();string sql2 = "UPDATE CaiDan SET Zan = Zan+1 WHERE caiID = "+ bianHao + "";int gai = zhang.ExecuteNonQuery(sql2);if (gai == 1){Console.WriteLine("点赞成功!");}else {Console.WriteLine("对不起,点赞失败!");}FanHui();//返回}#endregion//输入0返回方法#region  输入0返回方法public void FanHui() {int shuRu = 0;do {Console.Write("输入0返回:");shuRu = int.Parse(Console.ReadLine());} while (shuRu != 0);CaiDan();}#endregion}

封装类有宝宝们还不懂的请打开:

https://blog.csdn.net/qq_44860582/article/details/97615515

用C#与数据库实现吃货联盟订餐系统相关推荐

  1. java吃货联盟app讲解_吃货联盟订餐系统——JAVA实现

    package com.chihuo; import java.util.Scanner; public class OrderingMgr { public static void main(Str ...

  2. 吃货联盟订餐系统项目

    吃货联盟订餐系统项目 ​ 代码思路: 第一阶段:分析数据主题 第二阶段:分析并完成整体框架 第三阶段:分析并完成退出功能 第四阶段:分析并完成订餐功能 第五阶段:分析并完成查看餐袋功能 第六阶段:分析 ...

  3. java吃货联盟app讲解_java吃货联盟订餐系统

    ackage cn.practice1200; import java.util.Scanner; public class Eater_Alliance { /** * 吃货联盟订餐系统 * * @ ...

  4. 代码:吃货联盟订餐系统

    package Temporary.cn.kgc;import java.util.Scanner;public class Eater_Alliance {public static void ma ...

  5. Java程序编写 • 【第9章 程序:用定义类实现,吃货联盟订餐系统,新增商家和评论功能】

    本章节总结 返回作业目录 <吃货联盟订餐系统> 功能展示1:订餐 功能展示2:查看订单 功能展示3:签收订单 功能展示4:删除订单 功能展示5:商家评论 代码足有500多行,我会拆分开,进 ...

  6. java订餐系统_Java——吃货联盟订餐系统

    public static voidmain(String[] args) { String[] names= new String[4]; //订餐人姓名 String[] dishMegs = n ...

  7. java基础项目案例:吃货联盟订餐系统

    package org;import java.util.Scanner;public class OrderingUtil {Scanner input = new Scanner(System.i ...

  8. 吃货联盟订餐系统 java

    package com.chi; import java.util.Scanner; public class OrderingUtil { Scanner input = new Scanner(S ...

  9. Java基础之吃货联盟订餐系统Version1.0

    注意:此项目为刚学完Java基础至数组的入门程序. 吃货联盟订餐系统Version1.0是在数组的基础上完成的一个小项目,由于只是运用数组实现了一些简单的功能, 所以我管它叫Version1.0,即1 ...

最新文章

  1. full calendar mysql_fullcalendar 及mysql数据库的工作日管理
  2. Serverless特点及应用
  3. 在WinSCP中使用sudo进行sftp,不用输入密码,获得root权限
  4. GPRS流量计算方法(TCP/IP)
  5. 格斗类游戏和休闲类游戏不同
  6. 杀死进程和apk的安装
  7. python转csv_python如何将列表存储为csv文件
  8. Activiti工作流入门
  9. pytorch:ResNet50做新冠肺炎CT照片是否确诊分类
  10. 2019牛客暑期多校训练营(第七场)A String(暴力)
  11. Quarkus的其他(非标准)CDI功能
  12. MySql 优化的 30 条建议
  13. 已经没有再谈话再培养的飞秋必要了
  14. Keil5消除未调用警告
  15. 【IDEA】idea中Git的使用小技巧
  16. java sencha_开始使用Sencha Cmd
  17. 如何克服presentation恐惧呢?
  18. hp1015驱动64位_惠普1015打印机驱动下载|惠普 1015驱动电脑版 - 极光下载站
  19. 项目:智能语音对话机器人
  20. android 那个桌面好,手机桌面软件哪个好?最好用的手机桌面软件推荐

热门文章

  1. CODING 代码资产安全系列之 —— 构建全链路安全能力,守护代码资产安全
  2. spring全方位深入探索,万分膜拜!
  3. 某型无人机群的监视覆盖任务航路规划
  4. —++,--的虐待,小白的痛苦,自增与自减
  5. Linux学习之文件I/O操作
  6. 三阶贝塞尔曲线拟合圆弧的一般公式
  7. PS工作区拖动乱了如何复位?
  8. PPTV网络电视如何修复浏览器支持异常
  9. 预防腰椎间盘突出姿势最重要
  10. 工业相机在超级高铁管道视觉检测系统中的应用