餐厅管理系统(mini版)

附源代码,包括Python和SQL

啥也不多嗦,直接开整,上代码

import tkinter as tk
from tkinter import ttk, messagebox
import mysql.connector


class DatabaseManager:
    # 初始化
    def __init__(self, root):
        self.root = root
        self.root.title("餐厅管理系统(mini版)")
        self.root.geometry("800x600")
        self.root.configure(bg='white')

        self.db_connection = mysql.connector.connect(
            host="localhost",
            user="root",
            password="123456",
            database="my"
        )
        self.cursor = self.db_connection.cursor()

        self.create_widgets()

    # 登录界面
    def create_widgets(self):
        self.notebook = ttk.Notebook(self.root)
        self.notebook.pack(expand=1, fill='both')

        self.create_login_page()

    def create_login_page(self):
        login_frame = ttk.Frame(self.notebook)
        self.notebook.add(login_frame, text="登录")

        ttk.Label(login_frame, text="用户名:").pack(pady=5)
        self.username_entry = ttk.Entry(login_frame)
        self.username_entry.pack(pady=5)

        ttk.Label(login_frame, text="密码:").pack(pady=5)
        self.password_entry = ttk.Entry(login_frame, show='*')
        self.password_entry.pack(pady=5)

        login_button = ttk.Button(login_frame, text="登录", command=self.on_login_button_clicked)
        login_button.pack(pady=20)

    def on_login_button_clicked(self):
        username = self.username_entry.get()
        password = self.password_entry.get()
        if username == "root" and password == "123456":
            messagebox.showinfo("登录成功", "欢迎管理员")
            self.create_menu_page()
            self.create_order_page()
            self.create_worker_page()
            self.create_tomer_page()
        else:
            messagebox.showerror("登录失败", "用户名或密码错误")

    # 菜单管理
    def create_menu_page(self):
        menu_frame = ttk.Frame(self.notebook)
        self.notebook.add(menu_frame, text="菜单管理")

        add_menu_button = ttk.Button(menu_frame, text="添加菜单", command=self.on_add_menu_button_clicked)
        add_menu_button.pack(pady=5)

        subtraction_menu_button = ttk.Button(menu_frame, text="删除菜单", command=self.on_subtraction_menu_button_clicked)
        subtraction_menu_button.pack(pady=10)

        self.menu_tree = ttk.Treeview(menu_frame, columns=("ID", "名称", "分类", "价格"), show='headings')
        for col in self.menu_tree["columns"]:
            self.menu_tree.heading(col, text=col)
        self.menu_tree.pack(expand=1, fill='both')
        self.load_menus()

    def on_add_menu_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("添加菜单")

        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        tk.Label(dialog, text="名称").pack(pady=5)
        name_entry = tk.Entry(dialog)
        name_entry.pack(pady=5)

        tk.Label(dialog, text="分类").pack(pady=5)
        class_entry = tk.Entry(dialog)
        class_entry.pack(pady=5)

        tk.Label(dialog, text="价格").pack(pady=5)
        price_entry = tk.Entry(dialog)
        price_entry.pack(pady=5)

        def add_menu():
            ID = id_entry.get()
            name = name_entry.get()
            m_class = class_entry.get()
            price = float(price_entry.get())
            query = "INSERT INTO Menus (M_id, M_name, M_class, M_price) VALUES (%s, %s, %s, %s)"
            self.cursor.execute(query, (ID, name, m_class, price))
            self.db_connection.commit()
            self.load_menus()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=add_menu).pack(pady=20)

    def on_subtraction_menu_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("删除菜单")
        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        def subtraction_menu():
            ID = id_entry.get()

            # 检查菜单是否存在
            query = "SELECT * FROM menus WHERE M_id = %s"
            self.cursor.execute(query, (ID,))
            menu_data = self.cursor.fetchall()

            if not menu_data:
                messagebox.showerror("错误", "菜单不存在,无法删除。")
                return

            query = "DELETE FROM menus WHERE M_id=(%s)"
            self.cursor.execute(query, (ID, ))
            self.db_connection.commit()
            self.load_menus()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=subtraction_menu).pack(pady=20)

    def load_menus(self):
        for item in self.menu_tree.get_children():
            self.menu_tree.delete(item)
        self.cursor.execute("SELECT * FROM Menus")
        for row in self.cursor.fetchall():
            self.menu_tree.insert('', 'end', values=row)

    # 订单管理
    def create_order_page(self):
        order_frame = ttk.Frame(self.notebook)
        self.notebook.add(order_frame, text="订单管理")

        add_order_button = ttk.Button(order_frame, text="添加订单", command=self.on_add_order_button_clicked)
        add_order_button.pack(pady=5)

        subtraction_order_button = ttk.Button(order_frame, text="删除订单", command=self.subtraction_order_button_clicked)
        subtraction_order_button.pack(pady=10)

        self.order_tree = ttk.Treeview(order_frame, columns=("订单ID", "顾客ID", "时间", "餐桌ID", "员工ID"), show='headings')
        for col in self.order_tree["columns"]:
            self.order_tree.heading(col, text=col)
        self.order_tree.pack(expand=1, fill='both')
        self.load_orders()

    def on_add_order_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("添加订单")

        tk.Label(dialog, text="订单ID").pack(pady=5)
        oid_entry = tk.Entry(dialog)
        oid_entry.pack(pady=5)

        tk.Label(dialog, text="顾客ID").pack(pady=5)
        tid_entry = tk.Entry(dialog)
        tid_entry.pack(pady=5)

        tk.Label(dialog, text="时间").pack(pady=5)
        time_entry = tk.Entry(dialog)
        time_entry.pack(pady=5)

        tk.Label(dialog, text="餐桌ID").pack(pady=5)
        czid_entry = tk.Entry(dialog)
        czid_entry.pack(pady=5)

        tk.Label(dialog, text="员工ID").pack(pady=5)
        wid_entry = tk.Entry(dialog)
        wid_entry.pack(pady=5)

        def add_order():
            oid = oid_entry.get()
            tid = tid_entry.get()
            time = time_entry.get()
            czid = czid_entry.get()
            wid = wid_entry.get()
            query = "INSERT INTO oder (O_id, T_id, time, Cz_id, W_id) VALUES (%s, %s, %s, %s, %s)"
            self.cursor.execute(query, (oid, tid, time, czid, wid))
            self.db_connection.commit()
            self.load_orders()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=add_order).pack(pady=20)

    def subtraction_order_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("删除订单")
        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        def subtraction_order():
            ID = id_entry.get()

            # 检查订单是否存在
            query = "SELECT * FROM oder WHERE O_id = %s"
            self.cursor.execute(query, (ID,))
            order_data = self.cursor.fetchall()

            if not order_data:
                messagebox.showerror("错误", "订单不存在,无法删除。")
                return

            query = "DELETE FROM oder WHERE O_id=(%s)"
            self.cursor.execute(query, (ID,))
            self.db_connection.commit()
            self.load_orders()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=subtraction_order).pack(pady=20)

    def load_orders(self):
        for item in self.order_tree.get_children():
            self.order_tree.delete(item)
        self.cursor.execute("SELECT * FROM oder")
        for row in self.cursor.fetchall():
            self.order_tree.insert('', 'end', values=row)

    # 员工管理
    def create_worker_page(self):
        worker_frame = ttk.Frame(self.notebook)
        self.notebook.add(worker_frame, text="员工管理")

        add_worker_button = ttk.Button(worker_frame, text="添加员工", command=self.on_add_worker_button_clicked)
        add_worker_button.pack(pady=5)

        subtraction_worker_button = ttk.Button(worker_frame, text="开除员工", command=self.on_subtraction_worker_button_clicked)
        subtraction_worker_button.pack(pady=10)

        self.worker_tree = ttk.Treeview(worker_frame, columns=("ID", "姓名", "性别", "年龄", "工资"), show='headings')
        for col in self.worker_tree["columns"]:
            self.worker_tree.heading(col, text=col)
        self.worker_tree.pack(expand=1, fill='both')
        self.load_workers()

    def on_add_worker_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("添加员工")

        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        tk.Label(dialog, text="姓名").pack(pady=5)
        name_entry = tk.Entry(dialog)
        name_entry.pack(pady=5)

        tk.Label(dialog, text="性别").pack(pady=5)
        sex_entry = tk.Entry(dialog)
        sex_entry.pack(pady=5)

        tk.Label(dialog, text="年龄").pack(pady=5)
        age_entry = tk.Entry(dialog)
        age_entry.pack(pady=5)

        tk.Label(dialog, text="工资").pack(pady=5)
        salary_entry = tk.Entry(dialog)
        salary_entry.pack(pady=5)

        def add_worker():
            ID = id_entry.get()
            name = name_entry.get()
            sex = sex_entry.get()
            age = int(age_entry.get())
            salary = float(salary_entry.get())
            query = "INSERT INTO worker (W_id, W_name, W_sex, W_age, W_salary) VALUES (%s, %s, %s, %s, %s)"
            self.cursor.execute(query, (ID, name, sex, age, salary))
            self.db_connection.commit()
            self.load_workers()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=add_worker).pack(pady=20)

    def on_subtraction_worker_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("开除员工")
        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        def subtraction_worker():
            ID = id_entry.get()

            # 检查员工是否存在
            query = "SELECT * FROM worker WHERE W_id = %s"
            self.cursor.execute(query, (ID,))
            worker_data = self.cursor.fetchall()

            if not worker_data:
                messagebox.showerror("错误", "员工不存在,无法删除。")
                return

            query = "DELETE FROM worker WHERE W_id=(%s)"
            self.cursor.execute(query, (ID,))
            self.db_connection.commit()
            self.load_workers()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=subtraction_worker).pack(pady=20)

    def load_workers(self):
        for item in self.worker_tree.get_children():
            self.worker_tree.delete(item)
        self.cursor.execute("SELECT * FROM Worker")
        for row in self.cursor.fetchall():
            self.worker_tree.insert('', 'end', values=row)

    # 会员管理
    def create_tomer_page(self):
        tomer_frame = ttk.Frame(self.notebook)
        self.notebook.add(tomer_frame, text="会员管理")

        add_tomer_button = ttk.Button(tomer_frame, text="添加会员", command=self.on_add_tomer_button_clicked)
        add_tomer_button.pack(pady=5)

        subtraction_tomer_button = ttk.Button(tomer_frame, text="删除会员", command=self.on_subtraction_tomer_button_clicked)
        subtraction_tomer_button.pack(pady=10)

        self.tomer_tree = ttk.Treeview(tomer_frame, columns=("ID", "姓名", "性别", "电话"), show='headings')
        for col in self.tomer_tree["columns"]:
            self.tomer_tree.heading(col, text=col)
        self.tomer_tree.pack(expand=1, fill='both')
        self.load_tomer()

    def on_add_tomer_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("添加会员")

        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        tk.Label(dialog, text="姓名").pack(pady=5)
        name_entry = tk.Entry(dialog)
        name_entry.pack(pady=5)

        tk.Label(dialog, text="性别").pack(pady=5)
        sex_entry = tk.Entry(dialog)
        sex_entry.pack(pady=5)

        tk.Label(dialog, text="电话").pack(pady=5)
        phone_entry = tk.Entry(dialog)
        phone_entry.pack(pady=5)

        def add_tomer():
            ID = id_entry.get()
            name = name_entry.get()
            t_sex = sex_entry.get()
            phone = phone_entry.get()
            query = "INSERT INTO tomer (T_id, T_name, T_rsex, T_phone) VALUES (%s, %s, %s, %s)"
            self.cursor.execute(query, (ID, name, t_sex, phone))
            self.db_connection.commit()
            self.load_tomer()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=add_tomer).pack(pady=20)

    def on_subtraction_tomer_button_clicked(self):
        dialog = tk.Toplevel()
        dialog.title("删除会员")
        tk.Label(dialog, text="ID").pack(pady=5)
        id_entry = tk.Entry(dialog)
        id_entry.pack(pady=5)

        def subtraction_tomer():
            ID = id_entry.get()

            # 检查会员是否存在
            query = "SELECT * FROM tomer WHERE T_id = %s"
            self.cursor.execute(query, (ID,))
            tomer_data = self.cursor.fetchall()

            if not tomer_data:
                messagebox.showerror("错误", "会员不存在,无法删除。")
                return

            query = "DELETE FROM tomer WHERE T_id=(%s)"
            self.cursor.execute(query, (ID, ))
            self.db_connection.commit()
            self.load_tomer()
            dialog.destroy()

        ttk.Button(dialog, text="确定", command=subtraction_tomer).pack(pady=20)

    def load_tomer(self):
        for item in self.tomer_tree.get_children():
            self.tomer_tree.delete(item)
        self.cursor.execute("SELECT * FROM tomer")
        for row in self.cursor.fetchall():
            self.tomer_tree.insert('', 'end', values=row)


if __name__ == "__main__":
    root = tk.Tk()
    app = DatabaseManager(root)
    root.mainloop()

运行结果应该是下图

数据库的连接,就连你自己的,起的啥名就改成什么,改这一块

数据库的SQL代码如下:



SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for discount_rules
-- ----------------------------
DROP TABLE IF EXISTS `discount_rules`;
CREATE TABLE `discount_rules` (
  `Je` float NOT NULL,
  `Zk` float DEFAULT NULL,
  PRIMARY KEY (`Je`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of discount_rules
-- ----------------------------
INSERT INTO `discount_rules` VALUES ('100', '9.9');
INSERT INTO `discount_rules` VALUES ('200', '9.5');
INSERT INTO `discount_rules` VALUES ('300', '9.2');
INSERT INTO `discount_rules` VALUES ('500', '9');
INSERT INTO `discount_rules` VALUES ('1000', '8.5');

-- ----------------------------
-- Table structure for foodtable
-- ----------------------------
DROP TABLE IF EXISTS `foodtable`;
CREATE TABLE `foodtable` (
  `Cz_id` varchar(10) NOT NULL,
  `Cz_number` int(11) NOT NULL,
  `Cz_zt` varchar(6) DEFAULT NULL,
  PRIMARY KEY (`Cz_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of foodtable
-- ----------------------------
INSERT INTO `foodtable` VALUES ('1', '6', '有人');
INSERT INTO `foodtable` VALUES ('2', '6', '空');
INSERT INTO `foodtable` VALUES ('3', '6', '空');
INSERT INTO `foodtable` VALUES ('4', '6', '空');
INSERT INTO `foodtable` VALUES ('5', '8', '空');
INSERT INTO `foodtable` VALUES ('6', '8', '有人');
INSERT INTO `foodtable` VALUES ('7', '8', '有人');
INSERT INTO `foodtable` VALUES ('8', '8', '空');
INSERT INTO `foodtable` VALUES ('9', '10', '有人');

-- ----------------------------
-- Table structure for menus
-- ----------------------------
DROP TABLE IF EXISTS `menus`;
CREATE TABLE `menus` (
  `M_id` varchar(10) NOT NULL,
  `M_name` varchar(20) DEFAULT NULL,
  `M_class` varchar(10) DEFAULT NULL,
  `M_price` float DEFAULT NULL,
  PRIMARY KEY (`M_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of menus
-- ----------------------------
INSERT INTO `menus` VALUES ('001', '小鸡炖蘑菇', '荤素搭配', '49.99');
INSERT INTO `menus` VALUES ('002', '黄焖鸡', '荤', '12');
INSERT INTO `menus` VALUES ('003', '混沌', '荤', '10');
INSERT INTO `menus` VALUES ('004', '混沌', '素', '8');
INSERT INTO `menus` VALUES ('005', '兰州拉面', '素', '10');
INSERT INTO `menus` VALUES ('006', '鸭血粉丝', '荤素搭配', '9.99');
INSERT INTO `menus` VALUES ('007', '小酥肉', '荤', '11.99');
INSERT INTO `menus` VALUES ('008', '大盘鸡', '荤', '55.99');
INSERT INTO `menus` VALUES ('009', '烤鱼', '荤', '20.99');
INSERT INTO `menus` VALUES ('010', '花生米', '小吃', '5.99');
INSERT INTO `menus` VALUES ('011', '啤酒', '饮品', '4.5');
INSERT INTO `menus` VALUES ('012', '腐竹', '素', '10');
INSERT INTO `menus` VALUES ('013', '拍黄瓜', '素', '5.5');

-- ----------------------------
-- Table structure for menus_oder
-- ----------------------------
DROP TABLE IF EXISTS `menus_oder`;
CREATE TABLE `menus_oder` (
  `O_id` varchar(10) NOT NULL,
  `M_id` varchar(10) NOT NULL,
  `M_name` varchar(10) DEFAULT NULL,
  `M_number` int(11) NOT NULL,
  PRIMARY KEY (`M_id`,`O_id`),
  KEY `O_id` (`O_id`),
  CONSTRAINT `menus_oder_ibfk_1` FOREIGN KEY (`M_id`) REFERENCES `menus` (`M_id`),
  CONSTRAINT `menus_oder_ibfk_2` FOREIGN KEY (`O_id`) REFERENCES `oder` (`O_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of menus_oder
-- ----------------------------
INSERT INTO `menus_oder` VALUES ('000001', '001', '小鸡炖蘑菇', '20');
INSERT INTO `menus_oder` VALUES ('000020', '001', '兰州拉面', '23');
INSERT INTO `menus_oder` VALUES ('000002', '002', '黄焖鸡', '24');
INSERT INTO `menus_oder` VALUES ('000003', '003', '混沌', '25');
INSERT INTO `menus_oder` VALUES ('000007', '003', '混沌', '40');
INSERT INTO `menus_oder` VALUES ('000013', '003', '小鸡炖蘑菇', '25');
INSERT INTO `menus_oder` VALUES ('000015', '003', '腐竹', '38');
INSERT INTO `menus_oder` VALUES ('000018', '003', '鸭血粉丝', '50');
INSERT INTO `menus_oder` VALUES ('000004', '004', '混沌', '23');
INSERT INTO `menus_oder` VALUES ('000014', '004', '兰州拉面', '23');
INSERT INTO `menus_oder` VALUES ('000005', '005', '兰州拉面', '28');
INSERT INTO `menus_oder` VALUES ('000008', '005', '烤鱼', '50');
INSERT INTO `menus_oder` VALUES ('000016', '005', '兰州拉面', '40');
INSERT INTO `menus_oder` VALUES ('000005', '006', '鸭血粉丝', '38');
INSERT INTO `menus_oder` VALUES ('000010', '006', '兰州拉面', '23');
INSERT INTO `menus_oder` VALUES ('000014', '006', '花生米', '28');
INSERT INTO `menus_oder` VALUES ('000017', '006', '混沌', '40');
INSERT INTO `menus_oder` VALUES ('000006', '007', '小酥肉', '40');
INSERT INTO `menus_oder` VALUES ('000009', '008', '烤鱼', '46');
INSERT INTO `menus_oder` VALUES ('000012', '008', '黄焖鸡', '24');
INSERT INTO `menus_oder` VALUES ('000019', '008', '拌黄瓜', '46');
INSERT INTO `menus_oder` VALUES ('000011', '009', '鸭血粉丝', '20');

-- ----------------------------
-- Table structure for oder
-- ----------------------------
DROP TABLE IF EXISTS `oder`;
CREATE TABLE `oder` (
  `O_id` varchar(10) NOT NULL,
  `T_id` varchar(10) NOT NULL,
  `time` datetime NOT NULL,
  `Cz_id` varchar(10) NOT NULL,
  `W_id` varchar(10) NOT NULL,
  PRIMARY KEY (`O_id`),
  KEY `T_id` (`T_id`),
  KEY `Cz_id` (`Cz_id`),
  KEY `W_id` (`W_id`),
  CONSTRAINT `oder_ibfk_1` FOREIGN KEY (`T_id`) REFERENCES `tomer` (`T_id`),
  CONSTRAINT `oder_ibfk_2` FOREIGN KEY (`Cz_id`) REFERENCES `foodtable` (`Cz_id`),
  CONSTRAINT `oder_ibfk_3` FOREIGN KEY (`W_id`) REFERENCES `worke` (`W_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of oder
-- ----------------------------
INSERT INTO `oder` VALUES ('000001', '00001', '2020-06-01 09:30:45', '1', '01');
INSERT INTO `oder` VALUES ('000002', '00002', '2021-06-22 16:15:31', '2', '02');
INSERT INTO `oder` VALUES ('000003', '00003', '2021-06-22 16:15:57', '3', '03');
INSERT INTO `oder` VALUES ('000004', '00004', '2021-06-22 16:16:19', '4', '04');
INSERT INTO `oder` VALUES ('000005', '00005', '2021-06-22 16:16:40', '5', '05');
INSERT INTO `oder` VALUES ('000006', '00006', '2021-06-22 16:17:01', '6', '06');
INSERT INTO `oder` VALUES ('000007', '00007', '2021-06-22 16:17:23', '7', '07');
INSERT INTO `oder` VALUES ('000008', '00008', '2021-06-22 16:17:47', '8', '08');
INSERT INTO `oder` VALUES ('000009', '00009', '2021-06-22 16:18:07', '9', '09');
INSERT INTO `oder` VALUES ('000010', '00010', '2021-06-22 16:18:30', '1', '10');
INSERT INTO `oder` VALUES ('000011', '00011', '2021-06-22 16:19:08', '2', '01');
INSERT INTO `oder` VALUES ('000012', '00012 ', '2021-06-22 16:19:28', '3', '02');
INSERT INTO `oder` VALUES ('000013', '00013', '2021-06-22 16:19:53', '4', '03');
INSERT INTO `oder` VALUES ('000014', '00014', '2021-06-22 16:20:17', '5', '04');
INSERT INTO `oder` VALUES ('000015', '00015', '2021-06-22 16:20:40', '6', '05');
INSERT INTO `oder` VALUES ('000016', '00016', '2021-06-22 16:21:08', '7', '06');
INSERT INTO `oder` VALUES ('000017', '00017', '2021-06-22 16:21:33', '8', '07');
INSERT INTO `oder` VALUES ('000018', '00018', '2021-06-22 16:21:54', '9', '08');
INSERT INTO `oder` VALUES ('000019', '00019', '2021-06-22 16:22:12', '1', '09');
INSERT INTO `oder` VALUES ('000020', '00020', '2021-06-22 16:22:34', '2', '10');

-- ----------------------------
-- Table structure for sales_bill
-- ----------------------------
DROP TABLE IF EXISTS `sales_bill`;
CREATE TABLE `sales_bill` (
  `O_id` varchar(10) NOT NULL,
  `S_price` float DEFAULT NULL,
  `S_priceafter` float DEFAULT NULL,
  `time` datetime DEFAULT NULL,
  PRIMARY KEY (`O_id`),
  CONSTRAINT `sales_bill_ibfk_1` FOREIGN KEY (`O_id`) REFERENCES `oder` (`O_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of sales_bill
-- ----------------------------
INSERT INTO `sales_bill` VALUES ('000001', '100.07', '99.0693', '2021-06-22 16:42:22');
INSERT INTO `sales_bill` VALUES ('000002', '120.25', '119.048', '2021-06-22 16:42:24');
INSERT INTO `sales_bill` VALUES ('000003', '132.52', '131.195', '2021-06-22 16:42:28');
INSERT INTO `sales_bill` VALUES ('000004', '154.42', '152.876', '2021-06-22 16:42:31');
INSERT INTO `sales_bill` VALUES ('000005', '2546.2', '2164.27', '2021-06-22 16:42:35');
INSERT INTO `sales_bill` VALUES ('000006', '487.45', '448.454', '2021-06-22 16:42:38');
INSERT INTO `sales_bill` VALUES ('000007', '165.23', '163.578', '2021-06-22 16:42:41');
INSERT INTO `sales_bill` VALUES ('000008', '235.55', '223.773', '2021-06-22 16:42:44');
INSERT INTO `sales_bill` VALUES ('000009', '345.26', '317.639', '2021-06-22 16:42:47');
INSERT INTO `sales_bill` VALUES ('000010', '256.42', '243.599', '2021-06-22 16:42:50');
INSERT INTO `sales_bill` VALUES ('000011', '354.42', '326.006', '2021-06-22 16:42:52');
INSERT INTO `sales_bill` VALUES ('000012', '145.23', '143.778', '2021-06-22 16:42:54');
INSERT INTO `sales_bill` VALUES ('000013', '200.12', '190.114', '2021-06-22 16:42:57');
INSERT INTO `sales_bill` VALUES ('000014', '300.14', '276.129', '2021-06-22 16:42:59');
INSERT INTO `sales_bill` VALUES ('000015', '1000.23', '850.195', '2021-06-22 16:43:01');
INSERT INTO `sales_bill` VALUES ('000016', '154.15', '152.609', '2021-06-22 16:43:03');
INSERT INTO `sales_bill` VALUES ('000017', '1120.23', '952.192', '2021-06-22 16:43:05');
INSERT INTO `sales_bill` VALUES ('000018', '1523.45', '1294.93', '2021-06-22 16:43:08');
INSERT INTO `sales_bill` VALUES ('000019', '123.23', '121.998', '2021-06-22 16:43:11');
INSERT INTO `sales_bill` VALUES ('000020', '154.5', '326.14', '2021-06-22 16:43:14');

-- ----------------------------
-- Table structure for tomer
-- ----------------------------
DROP TABLE IF EXISTS `tomer`;
CREATE TABLE `tomer` (
  `T_id` varchar(10) NOT NULL,
  `T_name` varchar(10) NOT NULL,
  `T_rsex` varchar(4) DEFAULT NULL,
  `T_phone` varchar(20) DEFAULT NULL,
  PRIMARY KEY (`T_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of tomer
-- ----------------------------
INSERT INTO `tomer` VALUES ('00001', '李一', '男', '12345678910');
INSERT INTO `tomer` VALUES ('00002', '李二', '男', '11345678910');
INSERT INTO `tomer` VALUES ('00003', '李三', '男', '12145678910');
INSERT INTO `tomer` VALUES ('00004', '李四', '男', '12315678910');
INSERT INTO `tomer` VALUES ('00005', '李五', '男', '12341678910');
INSERT INTO `tomer` VALUES ('00006', '李六', '男', '12345178910');
INSERT INTO `tomer` VALUES ('00007', '李七', '女', '15936053010');
INSERT INTO `tomer` VALUES ('00008', '李八', '女', '12345671910');
INSERT INTO `tomer` VALUES ('00009', '李九', '女', '12345678110');
INSERT INTO `tomer` VALUES ('00010', '李十', '男', '12345678900');
INSERT INTO `tomer` VALUES ('00011', '田一', '男', '12345678911');
INSERT INTO `tomer` VALUES ('00012 ', '田二', '男', '10345678910');
INSERT INTO `tomer` VALUES ('00013', '田三', '男', '12045678910');
INSERT INTO `tomer` VALUES ('00014', '田四', '男', '12305678910');
INSERT INTO `tomer` VALUES ('00015', '田五', '女', '12340678910');
INSERT INTO `tomer` VALUES ('00016', '田六', '女', '12345078910');
INSERT INTO `tomer` VALUES ('00017', '田七', '女', '12345608910');
INSERT INTO `tomer` VALUES ('00018', '田八', '女', '12345670910');
INSERT INTO `tomer` VALUES ('00019', '田九', '男', '12345678010');
INSERT INTO `tomer` VALUES ('00020', '暴徒', '男', '12345678920');


-- ----------------------------
-- Table structure for worke
-- ----------------------------
DROP TABLE IF EXISTS `worke`;
CREATE TABLE `worke` (
  `W_id` varchar(10) NOT NULL,
  `W_name` varchar(10) DEFAULT NULL,
  `W_sex` varchar(4) DEFAULT NULL,
  `W_age` int(11) DEFAULT NULL,
  `W_salary` float DEFAULT NULL,
  PRIMARY KEY (`W_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of worke
-- ----------------------------
INSERT INTO `worke` VALUES ('01', '张一', '男', '21', '5200');
INSERT INTO `worke` VALUES ('02', '张二', '男', '21', '5100');
INSERT INTO `worke` VALUES ('03', '张三', '男', '22', '5000');
INSERT INTO `worke` VALUES ('04', '张四', '男', '22', '4900');
INSERT INTO `worke` VALUES ('05', '张五', '男', '22', '4800');
INSERT INTO `worke` VALUES ('06', '张六', '女', '21', '5200');
INSERT INTO `worke` VALUES ('07', '张七', '女', '20', '5100');
INSERT INTO `worke` VALUES ('08', '张八', '女', '20', '5000');
INSERT INTO `worke` VALUES ('09', '张九', '女', '20', '5000');
INSERT INTO `worke` VALUES ('10', '不可以色色', '女', '20', '5000');


-- ----------------------------
-- View structure for tomer_t
-- ----------------------------
DROP VIEW IF EXISTS `tomer_t`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `tomer_t` AS select `tomer`.`T_id` AS `T_id`,`tomer`.`T_name` AS `T_name`,`tomer`.`T_rsex` AS `T_rsex`,`tomer`.`T_phone` AS `T_phone` from `tomer` where (`tomer`.`T_rsex` = '女') ;

里面的错单词为woke->woker,T_rsex->T_sex,oder->order

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值