#作业说明 现要求你写一个简单的员工信息增删改查程序 文件存储时可以这样表示 1,Alex Li,22,13651054608,IT,2013-04-01 2,Jack Wang,28,13451024608,HR,2015-01-07 3,Rain Wang,21,13451054608,IT,2017-04-01 4,Mack Qiao,44,15653354208,Sales,2016-02-01 5,Rachel Chen,23,13351024606,IT,2013-03-16 6,Eric Liu,19,18531054602,Marketing,2012-12-01 7,Chao Zhang,21,13235324334,Administration,2011-08-08 8,Kevin Chen,22,13151054603,Sales,2013-04-01 9,Shit Wen,20,13351024602,IT,2017-07-03 10,Shanshan Du,26,13698424612,Operation,2017-07-02 1.可进行模糊查询,语法至少支持下面3种查询语法: find name,age from staff_table where age > 22 find * from staff_table where dept = "IT" find * from staff_table where enroll_date like "2013" 2.可创建新员工纪录,以phone做唯一键(即不允许表里有手机号重复的情况),staff_id需自增 语法: add staff_table Alex Li,25,134435344,IT,2015-10-29 3.可删除指定员工信息纪录,输入员工id,即可删除 语法: del from staff where id=3 4.可修改员工信息,语法如下: UPDATE staff_table SET dept="Market" WHERE dept = "IT" 把所有dept=IT的纪录的dept改成Market UPDATE staff_table SET age=25 WHERE name = "Alex Li" 把name=Alex Li的纪录的年龄改成25 5.以上每条语名执行完毕后,要显示这条语句影响了多少条纪录。 比如查询语句 就显示 查询出了多少条、修改语句就显示修改了多少条等。 ##目录说明 leco@leco:~/luffy/module_1/user_info$ tree . . ├── user_info.py # 主程序 ├── data # 数据库文夹(首次运行后会初始化创造该文件夹) │ └── staff_table.db # 数据库文件(首次运行后会初始化创造该文件) ├── readme.md # 程序说明文件 └── 人员信息增删改查流程图.bmp # 流程图 ## 运行环境 Python 3.5.2 ## 流程图 亿图 7.8 ## 功能介绍 1.人员信息增删改查程序 * 涉及文件:user_info.py staff_table.db * 使用python3 运行user_info.py文件执行程序 * 程序说明: - 本系统共分为六大环节: 1. 显示当前数据库中的所有人员清单列表 2. 显示输入帮助信息 3. sql 语句输入处理(四中操作) - 新增某条用户信息(id自增,且用户手机号是主键唯一) - 根据id号删除某个用户整条信息 - 根据条件修改用户信息 - 根据条件查询用户信息
代码:

#!/usr/bin/env python # _*_ coding: utf-8 _*_ import os import re import time # 高亮显示字体颜色 red = ‘\033[1;31;40m‘ # 红色 green = ‘\033[1;32;40m‘ # 绿色 blue = ‘\033[1;34;40m‘ # 蓝色 end = ‘\033[0m‘ # 无色 # 高亮闪烁显示字体颜色 red_twinkle = ‘\033[5;31;40m‘ # 红色,闪烁 green_twinkle = ‘\033[1;32;40m‘ # 绿色,闪烁 blue_twinkle = ‘\033[1;34;40m‘ # 蓝色,闪烁 # 数据相关 data_path = "data" # 数据文件夹 staff_table = "staff_table" # 数据表名 staff_db = os.path.join(data_path, staff_table + ‘.db‘) # 路径全称 staff_db_swap = os.path.join(data_path, staff_table + ‘.swap‘) FIELD_LEN = 7 # 表中字段必须是5 # query keywords = { "star": "*", "from": "from", "where": "where" } field_symbol = { ">": ">", "<": "<", "=": "=", "like": "like" } field_keywords = { "staff_id": "staff_id", "name": "name", "age": "age", "phone": "phone", "dept": "dept", "enroll_date": "enroll_date" } sql_commands = { "find": "find", "add": "add", "del": "del", "update": "update" } # 错误输出 def msg_log(normal_data, color_data, font_color): """ :param normal_data: 输出不带颜色字体 :param color_data: 输出带颜色的字体 :param font_color: 输出字体的颜色 :return: """ if not color_data.split(): print(font_color + normal_data + end) else: print(normal_data + font_color + color_data + end) # 初始化员工数据 def initial_employee_information(): """ 初始化数据库,员工信息数据 :return: """ msg = """1,Alex Li,22,13651054608,IT,2013-04-01 2,Jack Wang,28,13451024608,HR,2015-01-07 3,Rain Wang,21,13451054608,IT,2017-04-01 4,Mack Qiao,44,15653354208,Sales,2016-02-01 5,Rachel Chen,23,13351024606,IT,2013-03-16 6,Eric Liu,19,18531054602,Marketing,2012-12-01 7,Chao Zhang,21,13235324334,Administration,2011-08-08 8,Kevin Chen,22,13151054603,Sales,2013-04-01 9,Shit Wen,20,13351024602,IT,2017-07-03 10,Shanshan Du,26,13698424612,Operation,2017-07-02""" if not os.path.exists(data_path): os.mkdir(data_path) if not os.path.exists(staff_db): with open(staff_db, "w", encoding="utf-8") as fd: fd.write(msg) msg_log("员工信息数据初始化完毕", "", blue) def show_prompt_information(): """ 提示信息,方便用户根据提示语法输入相关命令提示进行操作 :return: """ msg = """ ---------------------------------------- 迎进入员工信息增删改查程序 ---------------------------------------- 语法操作: 1.可进行模糊查询: find name,age from staff_table where age > 22 find * from staff_table where dept = "IT" find * from staff_table where enroll_date like "2013" 2.可创建新员工纪录,以phone做唯一键(即不允许表里有手机号重复的情况),staff_id需自增 语法: add staff_table Alex Li,18,134435344,IT,2015-10-29 3.可删除指定员工信息纪录,输入员工id,即可删除 语法: del from staff_tables where id=3 4.可修改员工信息,语法如下: UPDATE staff_table SET dept = "Market" WHERE dept = "IT" 把所有dept=IT的纪录的dept改成Market UPDATE staff_table SET age = 25 WHERE name = "Alex Li" 把name=Alex Li的纪录的年龄改成25 命令提示: 1. 输入q/Q 退出当前应用 2. 输入 show 查看当前数据人员名单 """ print(msg) def get_staff_id(staff_db): """ :param staff_db: 员工人员数据表 :return: 员工人员自增id """ list_data = [] with open(staff_db, ‘r‘) as fd: for line in fd: list_data.append(line) auto_increment_id = list_data[-1].split(",")[0] return auto_increment_id def get_staff_info(dbfile): data_list = [] with open(dbfile, "r") as fd: for i in fd: data_list.append(str(i).split(‘,‘)) return data_list def get_feild_id(column): if column == "staff_id": column = 0 elif column == "name": column = 1 elif column == "age": column = 2 elif column == "phone": column = 3 elif column == "dept": column = 4 elif column == "enroll_date": column = 5 return column def show_employee_info(): """ 格式化输出当前数据库里面人员名单 :return: """ title = ["staff_id", "name", "age", "phone", "dept", "enroll_date"] user_list = get_staff_info(staff_db) for i in range(len(title)): print(title[i].rjust(14),end=" ") print("") print("--".center(100, "-")) for item in user_list: for i in range(len(item)): print(item[i].rjust(15),end="") print("\n") def show_tables(): """ 提示当前数据中表 :return: """ for file in os.listdir(data_path): if file.endswith(".db"): db_name = file.split(".db")[0] msg = """+----------------------------+ | employee_information | +----------------------------+ | %s | +----------------------------+ 1 rows in set (0.00 sec) """ % db_name print(msg) def check_table(table): """ :param table: 要判断的数据库的表 :return: 返回bool值(表存在就返回True,否则返回False) """ for file in os.listdir(data_path): if file.endswith(".db"): db_name = file.split(".db")[0] if db_name == table: return True else: return False def check_filed(table, filed): pass def list_remove_null(content): """ :param content: sql 语句 :return: 去除空的剩余sql语句 """ content_list = re.split(‘ |=‘, content) # 分解sql命令 while ‘‘ in content_list: # 去除sql列表命令中的空元素 content_list.remove(‘‘) return content_list def list_replace(content, old, new): """ 嵌套列表数据修改数据操作 :param content: 传入2层列表 :param old: 旧字段 :param new: 新字段 :return: """ p = content.index(old) content.remove(old) content.insert(p, new) return content def check_user(dbfile, field): """ 通过检查唯一键filed,来检查数据库,用户存在就返回True,否则返回False :param dbfile: 要检查的数据库 :param field: 要检查的字段 :return: bool,True|False """ with open(dbfile, "r", encoding="utf-8") as fd: for line in fd.readlines(): if field in line: return True else: return False def storage_data(data_value,rewrite = True): """ :param data_value: 把列表data_value中的数据写入文件 :return: """ if rewrite == True: with open(staff_db, "w", encoding="utf-8") as fd: for item in data_value: fd.write(",".join(item)) else: with open(staff_db, "a+", encoding="utf-8") as fd: fd.write("\n") fd.write(",".join(data_value)) def query_operation(content): """ :param content: 传入sql语句 :return: """ user_list = get_staff_info(staff_db) query_list = content.split() query_list_head, position1, position2, position3, position4 = query_list[0], query_list[-1], query_list[-2], query_list[-3], query_list[-4] # 去除 * ,name/age if position3 not in field_keywords: msg_log("抱歉,输入命令错误,字段不正确,请打印h,查看规则", "", red) else: if query_list_head == ‘*‘: # 判断查询语句,关键字是否为*号 if position2 == field_symbol[">"]: pass elif position2 == field_symbol["<"]: pass elif position2 == field_symbol["="]: # 判断类似语句 find * from staff_table where dept = "IT" count = 0 for k in user_list: if eval(position1) in k: count += 1 k_str = ‘,‘.join(k).replace("\n", "") k_str = k_str.replace(‘,‘, " ") # 将逗号替换成空格 print(k_str) elif position2 == field_symbol["like"]: # 判断类似语句 find * from staff_table where enroll_date like "2013" count = 0 for k in user_list: if eval(position1) in k[get_feild_id(position3)]: count += 1 k_str = ‘,‘.join(k).replace("\n", "") k_str = k_str.replace(‘,‘, " ") # 将逗号替换成空格 print(k_str) else: msg_log("抱歉,输入命令错误,字段不正确,请打印h,查看规则", "", red) else: query_list_head_field = query_list_head.split(",") if position2 == field_symbol[">"]: count = 0 tmp_list = [] for k in user_list: if k[get_feild_id(position3)] > position1: count += 1 k_str = ‘,‘.join(k).replace("\n", "") k_str = k_str.replace(‘,‘, " ") # 将逗号替换成空格 tmp_list.append(k) for line in query_list_head_field: print(line, end=" ") print(" ") for i in tmp_list: for j in query_list_head_field: print(i[get_feild_id(j)], end=" ") print("") elif position2 == field_symbol["="]: count = 0 for k in user_list: if k[get_feild_id(position3)] == position1: count += 1 k_str = ‘,‘.join(k).replace("\n", "") k_str = k_str.replace(‘,‘, " ") # 将逗号替换成空格 print(k_str) elif position2 == field_symbol["<"]: count = 0 for k in user_list: if k[get_feild_id(position3)] < position1: count += 1 k_str = ‘,‘.join(k).replace("\n", "") k_str = k_str.replace(‘,‘, " ") # 将逗号替换成空格 print(k_str) msg_log("查询到语句条数为: ", "%s" % count, green) # 打印出受影响的条数 def add_operation(content): """ :param content: 传入新增用户sql语句 :return: """ phone_list = [] table, content = content.strip().split(" ", 1) content = content.split(",") user_list = get_staff_info(staff_db) if len(content) != 5: # 判读输入sql的字段长度必须是5,否则打印命令错误 msg_log("抱歉,输入命令错误,字段不正确,请打印h,查看规则", "", red) else: user_list = get_staff_info(staff_db) for line in range(len(user_list)): # 去除文件中空行 if [‘\n‘] in user_list: user_list.remove([‘\n‘]) for i in range(len(user_list)): # 保存当前数据库中的所有电话清单到列表 phone_list.append(user_list[i][3]) if content[2] in phone_list: # 判断电话是否存在 msg_log("抱歉,用户名已经存在", " ", red) else: increment_id = (len(user_list) + 1) content.insert(0, str(increment_id)) content.append("\n") storage_data(content, rewrite=False) msg_log("新增语句,影响的行数为", "%s" % 1, green) def del_operation(content): """ 根据id号删除用户数据 :param content: sql语句内容 :return: """ tmp_id, tmp_id_flag, staff_id = 0, True, [] # 初始化临时参数 del_id = int(content.split()[-1].split("=")[-1]) - 1 # 获取要删除的id user_list = get_staff_info(staff_db) # 保存当前数据库中的所有电话清单到列表 for i in range(len(user_list)): if str(del_id + 1) == user_list[i][0]: tmp_id, tmp_id_flag = i, True break else: tmp_id_flag = False if not tmp_id_flag: msg_log("抱歉,你要删除的数据不存在", "", red) else: del user_list[tmp_id] storage_data(user_list) msg_log("删除语句,影响的行数为", "%s" % 1, green) def update_operation(content): """ :param content: 传入查询sql语句 :return: """ update_keywords, content_list, data_value_tmp, count = ["set", "where"], [], [], 0 data_value = get_staff_info(staff_db) content_list = list_remove_null(content) # 分解sql命令 [‘staff_table‘, ‘SET‘, ‘dept‘, ‘"Market"‘, ‘WHERE‘, ‘dept‘, ‘"IT"‘] if content_list[0] == "staff_table": # 判读数据表,关键字例如where,set和要查询的字段例如name必须存存在(合法) # 判断sql 语法 合法性 if content_list[1].lower() in update_keywords and content_list[4].lower() in update_keywords and content_list[2].lower() in field_keywords and content_list[5] in field_keywords: # 修改相同列, 例如 UPDATE staff_table SET dept="Market" WHERE dept = "IT" if content_list[2] == content_list[5]: for line in data_value: if eval(content_list[6]) in line[get_feild_id(content_list[5])]: count += 1 line = list_replace(line, eval(content_list[6]), eval(content_list[3])) data_value_tmp.append(line) storage_data(data_value_tmp) else: # 修改不同列,UPDATE staff_table SET age=25 WHERE name = "Alex Li" if ‘WHERE‘ in content: pre_content, after_content = content.split("WHERE") pre_content = pre_content.split() old_field_key = after_content.split("=")[0].split()[0] old_field_value = eval(after_content.split("=")[-1]) new_filed_key, new_filed_value = pre_content[2], pre_content[4] for line in data_value: if old_field_value in line: count += 1 list_replace(line, line[get_feild_id(new_filed_key)], new_filed_value) data_value_tmp.append(line) storage_data(data_value_tmp) msg_log("修改语句条数为: ", "%s" % count, green) # 打印出受影响的条数 else: msg_log("抱歉,你输入的SQL语法错误:", " ", red) else: msg_log("抱歉,你的输入的数据库表不存在:", " ", red) def parse_input_data(sql): """ 解释输入数据, 1. 解析动作,是add,find,del,update 2. 解释内容,sql的具体操作 :param sql: 操作sql语句 :return: """ command, content = sql.split(‘ ‘, 1) msg_log("本次执行操作语句:", "%s" % sql, blue) if command.lower() == sql_commands["find"]: # 查询操作 query_operation(content) elif command.lower() == sql_commands["add"]: # 新增操作 add_operation(content) elif command.lower() == sql_commands["del"]: # 删除操作 del_operation(content) elif command.lower() == sql_commands["update"]: # 更新操作 update_operation(content) else: msg_log("抱歉,你输入的SQL命令不存在:", "%s" % sql, red) def main_process(): """ 主函数通过输入,匹配相对应的功能,解析sql,对应输出数据 :return: """ initial_employee_information() query_status = True while query_status: input_data = input("请输入操作语句,<h|H 帮助>: ").strip() if input_data.lower() == "q": # 输入q/Q 退出操作 query_status = False elif not input_data: msg_log("抱歉,输入不能为空", "", red) elif input_data.lower() == "h": # 展示提示信息,以便按照语法输入 show_prompt_information() elif input_data.lower().split()[0] == "show": # 查看人员信息 show_employee_info() else: if input_data.split()[0].lower() in sql_commands and len(input_data.split()) > 3: parse_input_data(input_data) # 解析输入的sql语法 else: msg_log("抱歉,sql命令不存在: ", "%s" % input_data, red) if __name__ == "__main__": main_process()
测试记录:
1. 显示人员清单
cmz@leco:~/test$ python3 user_info.py 员工信息数据初始化完毕 请输入操作语句,<h|H 帮助>: h ---------------------------------------- 迎进入员工信息增删改查程序 ---------------------------------------- 语法操作: 1.可进行模糊查询: find name,age from staff_table where age > 22 find * from staff_table where dept = "IT" find * from staff_table where enroll_date like "2013" 2.可创建新员工纪录,以phone做唯一键(即不允许表里有手机号重复的情况),staff_id需自增 语法: add staff_table Alex Li,18,134435344,IT,2015-10-29 3.可删除指定员工信息纪录,输入员工id,即可删除 语法: del from staff_tables where id=3 4.可修改员工信息,语法如下: UPDATE staff_table SET dept = "Market" WHERE dept = "IT" 把所有dept=IT的纪录的dept改成Market UPDATE staff_table SET age = 25 WHERE name = "Alex Li" 把name=Alex Li的纪录的年龄改成25 命令提示: 1. 输入q/Q 退出当前应用 2. 输入 show 查看当前数据人员名单 请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 IT 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 3 Rain Wang 21 13451054608 IT 2017-04-01 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 IT 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02
2. 显示帮助
请输入操作语句,<h|H 帮助>: h ---------------------------------------- 迎进入员工信息增删改查程序 ---------------------------------------- 语法操作: 1.可进行模糊查询: find name,age from staff_table where age > 22 find * from staff_table where dept = "IT" find * from staff_table where enroll_date like "2013" 2.可创建新员工纪录,以phone做唯一键(即不允许表里有手机号重复的情况),staff_id需自增 语法: add staff_table Alex Li,18,134435344,IT,2015-10-29 3.可删除指定员工信息纪录,输入员工id,即可删除 语法: del from staff_tables where id=3 4.可修改员工信息,语法如下: UPDATE staff_table SET dept = "Market" WHERE dept = "IT" 把所有dept=IT的纪录的dept改成Market UPDATE staff_table SET age = 25 WHERE name = "Alex Li" 把name=Alex Li的纪录的年龄改成25 命令提示: 1. 输入q/Q 退出当前应用 2. 输入 show 查看当前数据人员名单
3. 显示查询
请输入操作语句,<h|H 帮助>: find name,age from staff_table where age > 22 本次执行操作语句:find name,age from staff_table where age > 22 name age Jack Wang 28 Mack Qiao 44 Rachel Chen 23 Shanshan Du 26 查询到语句条数为: 4 请输入操作语句,<h|H 帮助>: find * from staff_table where dept = "IT" 本次执行操作语句:find * from staff_table where dept = "IT" 1 Alex Li 22 13651054608 IT 2013-04-01 3 Rain Wang 21 13451054608 IT 2017-04-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 9 Shit Wen 20 13351024602 IT 2017-07-03 查询到语句条数为: 4 请输入操作语句,<h|H 帮助>: find * from staff_table where enroll_date like "2013" 本次执行操作语句:find * from staff_table where enroll_date like "2013" 1 Alex Li 22 13651054608 IT 2013-04-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 8 Kevin Chen 22 13151054603 Sales 2013-04-01 查询到语句条数为: 3
4. 显示新增用户
请输入操作语句,<h|H 帮助>: add staff_table Alex Li,18,134435344,IT,2015-10-29 本次执行操作语句:add staff_table Alex Li,18,134435344,IT,2015-10-29 新增语句,影响的行数为1 请输入操作语句,<h|H 帮助>: add staff_table Alex Li,18,134435344,IT,2015-10-29 本次执行操作语句:add staff_table Alex Li,18,134435344,IT,2015-10-29 抱歉,用户名已经存在 # 根据phone为主键唯一原则 请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 IT 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 3 Rain Wang 21 13451054608 IT 2017-04-01 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 IT 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 IT 2015-10-29 # 信息的用户
5. 根据id删除某条用户信息
请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 IT 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 3 Rain Wang 21 13451054608 IT 2017-04-01 # 此条信息将被删除 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 IT 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 IT 2015-10-29 请输入操作语句,<h|H 帮助>: del from staff_tables where id=3 # 根据id号删除某条人员信息记录 本次执行操作语句:del from staff_tables where id=3 删除语句,影响的行数为1 请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 IT 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 IT 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 IT 2015-10-29 请输入操作语句,<h|H 帮助>: del from staff_tables where id=3 # 次id信息已经被删除了,所以找不到删除了 本次执行操作语句:del from staff_tables where id=3 抱歉,你要删除的数据不存在
6. 修改记录
请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 IT 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 IT 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 IT 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 IT 2015-10-29 请输入操作语句,<h|H 帮助>: UPDATE staff_table SET dept = "Market" WHERE dept = "IT" 本次执行操作语句:UPDATE staff_table SET dept = "Market" WHERE dept = "IT" 修改语句条数为: 4 请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 Market 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 Market 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 Market 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 Market 2015-10-29
请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 22 13651054608 Market 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 Market 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 Market 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 18 134435344 Market 2015-10-29 请输入操作语句,<h|H 帮助>: UPDATE staff_table SET age = 25 WHERE name = "Alex Li" 本次执行操作语句:UPDATE staff_table SET age = 25 WHERE name = "Alex Li" 修改语句条数为: 2 请输入操作语句,<h|H 帮助>: show staff_id name age phone dept enroll_date ---------------------------------------------------------------------------------------------------- 1 Alex Li 25 13651054608 Market 2013-04-01 2 Jack Wang 28 13451024608 HR 2015-01-07 4 Mack Qiao 44 15653354208 Sales 2016-02-01 5 Rachel Chen 23 13351024606 Market 2013-03-16 6 Eric Liu 19 18531054602 Marketing 2012-12-01 7 Chao Zhang 21 13235324334 Administration 2011-08-08 8 Kevin Chen 22 13151054603 Sales 2013-04-01 9 Shit Wen 20 13351024602 Market 2017-07-03 10 Shanshan Du 26 13698424612 Operation 2017-07-02 11 Alex Li 25 134435344 Market 2015-10-29