员工信息增删改查

  1 #Author guixin
  2 def find():
  3     '''
  4     查询语法如下:
  5     find name,age from staff_table where age > 22
  6     find * from staff_table where dept = IT
  7     find * from staff_table where enroll_date like 2013
  8     '''
  9     data = input("查询:")
 10     data1 = data.split()
 11     if len(data1) == 8 :
 12         if data == ("find name,age from staff_table where age > %s"%(data1[7])):
 13             f = open('staff_db','r')
 14             list1 = []
 15             count = 0
 16             for line in f:
 17                 i = line.strip().split(',')
 18                 if int(i[2]) > int(data1[7]):
 19                     list1.append(i)
 20             for line in list1:
 21                 count += 1
 22             print("满足条件的数量:%s"%(count))
 23             for line in list1:
 24                 print(line)
 25         elif data == ("find * from staff_table where dept = %s"%(data1[7])):
 26             f = open('staff_db','r')
 27             list2 = []
 28             count = 0
 29             for line in f:
 30                 i = line.strip().split(',')
 31                 if i[4] == data1[7]:
 32                     list2.append(i)
 33             for line in list2:
 34                 count += 1
 35             print("满足条件的数量:%s"%(count))
 36             for line in list2:
 37                 print(line)
 38         elif data == ("find * from staff_table where enroll_date like %s"%(data1[7])):
 39             list3 = []
 40             list4 = []
 41             count = 0
 42             f = open('staff_db','r')
 43             for line in f:
 44                 i = line.strip().split(',')
 45                 list3.append(i)
 46             for line in list3:
 47                 i = line[5].split('-')
 48                 if i[0] == data1[7]:
 49                     list4.append(line)
 50             for line in list4:
 51                 count += 1
 52             print("满足条件的数量:%s"%(count))
 53             for line in list4:
 54                 print(line)
 55         else:
 56             print("输入有误")
 57     else:
 58         print("输入有误")
 59 def add():
 60     '''
 61     注释信息:
 62     可创建新员工记录,以phone做唯一键,staff_id需自增
 63     新增方法:
 64     Gui Xin,22,13977777777,it,1999-1-1
 65     '''
 66     data = input("添加:")
 67     data1 = data.split(',')
 68     print(data1)
 69     if len(data1) == 5:
 70         list5 = []
 71         f = open("staff_db",'r+')
 72         for line in f:
 73             i = line.strip().split(',')
 74             list5.append(i[3])
 75         if data1[2] in list5:
 76             print("这条记录已存在")
 77         else:
 78             staff_id = str(len(list5)+1)
 79             data1.insert(0,staff_id)
 80             data1 = ', '.join(data1)
 81             f.write('\n')
 82             f.write(data1)
 83     else:
 84         print("输入有误")
 85 def delete():
 86     """
 87     注释信息:
 88     可删除指定员工的信息记录,输入员工ID即可删除
 89     del * from staff_db where id = 1
 90     """
 91     data = input("删除:")
 92     data1 = data.split()
 93     f = open('staff_db','r+')
 94     if len(data1) == 8:
 95         if data == ("del * from staff_db where id = %s"%(data1[7])):
 96             list6 = []
 97             for line in f:
 98                 i = line.strip().split(',')
 99                 list6.append(i)
100                 if int(i[0]) == int(data1[7]):
101                     list6.remove(i)
102                     print("删除记录:%s"%(i))
103             print(list6)
104         else:
105             print("输入有误")
106     else:
107         print("输入有误")
108 def update():
109     '''
110     注释信息:可修改员工信息,语法如下
111     update staff_table set dept = HR where dept = IT
112     update staff_table set age = 18 where name = 'Alex Li'
113     '''
114     data = input("更新:")
115     data1 = data.split()
116     if len(data1) == 10:
117         if data == ("update staff_table set dept = %s where dept = %s"%(data1[5],data1[9])):
118             f = open("staff_db",'r+')
119             for line in f:
120                 i = line.strip().split(',')
121                 if i[4] == data1[9] :
122                     i[4] = data1[5]
123                     print(i)
124         elif data == ("update staff_table set age = %s where name = %s"%(data1[5],data1[9])):
125             f = open("staff_db",'r+')
126             for line in f:
127                 i = line.strip().split(',')
128                 if i[1] == data1[9]:
129                     i[2] = data1[5]
130                     print(i)
131         else:
132             print("输入有误")
133     else:
134         print("输入有误")
135 data = input("/查询/添加/删除/更新:")
136 if data == "查询":
137     find()
138 elif data == "添加":
139     add()
140 elif data == "删除":
141     delete()
142 elif data == "更新":
143     update()
144 else:
145     print("输入有误")

 

转载于:https://www.cnblogs.com/guixin/p/8403599.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414765.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springmvc.xml 中 url-pattern/url-pattern节点详解

1. 先来上段常见的代码 1 <!-- MVC Servlet -->2 <servlet>3 <servlet-name>springServlet</servlet-name>4 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>5 <…

前端学习(2717):重读vue电商网站37之通过switch开关更改用户状态

首先&#xff0c;在 switch 开关添加一个 change 事件&#xff0c;并且通过作用域插槽的形式&#xff0c;将该行数据作为参数传入&#xff0c;目的是为了后续的修改。 在函数内我们将传递过来的参数作为我们请求的参数&#xff0c;通过 put 方式修改我们的后台数据 。

边框回归(Bounding Box Regression)详解

原文地址&#xff1a;http://blog.csdn.net/zijin0802034/article/details/77685438 Bounding-Box regression 最近一直看检测有关的Paper, 从rcnn&#xff0c; fast rcnn, faster rcnn, yolo, r-fcn, ssd&#xff0c;到今年cvpr最新的yolo9000。这些paper中损失函数都包含了边…

前端学习(2718):重读vue电商网站38之通过input输入框优化

通过增加 clearable 属性&#xff0c;我们的输入框就可以多一个 x&#xff0c;然后通过绑定 clear 事件&#xff0c;当我们进行清除 &#xff08;即点击由 clearable 属性生成的清空按钮时触发)时&#xff0c;就会重新获取我们的用户列表&#xff0c;不再需要用户再次点击搜索按…

web项目Servlet配置及jsp访问Servlet

方法1&#xff1a;单一方法请求servlet 1、创建Servlet WebServlet("/HelloForm") public class HelloForm extends HttpServlet { private static final long serialVersionUID 1L; /** * see HttpServlet#HttpServlet() */ publi…

php与数据库的连接用法 (签到一)

注册页面 //插入js验证 <script type"text/javascript"> window.onload function(){ var hid document.getElementById("id"); if(hid.value !""){ //当用户名已存在数据…

Oracle不连续的值,如何实现查找上一条、下一条

1. 遇到的问题 已知一个题库&#xff0c;希望实现当前页切换上一题&#xff0c;下一题的需求。 查看得知&#xff0c;数据库中用于查询的字段(主键)是不连续的。如上图所示&#xff1a;stxh为主键number类型。 2. 实现方式lead over 2.1 实现代码 下一条 select nowId, afte…

前端学习(2719):重读vue电商网站39之正则表达式验证邮箱和手机号码

Javascript // 验证邮箱的规则var checkEmail (rule, value, cb) > {const regEmail /^([a-zA-Z]|[0-9])(\w|-)[a-zA-Z0-9]\.([a-zA-Z]{2,4})$/if (regEmail.test(value)) {// 合法的邮箱return cb()}cb(new Error(请输入合法的邮箱))}// 验证手机号码的规则var checkMobi…

支付宝提现,单笔转账到支付宝账户

很简单。只需三个参数实现 单笔转账到支付宝账户 1、获取开放平台创建的APPID&#xff0c;同时必须添加 单笔转账到支付宝账户 这个功能 开放平台&#xff1a;https://open.alipay.com/platform/home.htm 2、登录支付宝商家中心平台&#xff1a;https://b.alipay.com/index.h…

Flink系列之:Checkpoints

Flink系列之&#xff1a;Checkpoints 一、概述二、保留Checkpoint三、目录结构四、通过配置文件全局配置五、创建 state backend 对单个作业进行配置六、从保留的checkpoint 中恢复状态 一、概述 Checkpoint 使 Flink 的状态具有良好的容错性&#xff0c;通过 checkpoint 机制…

filter过滤器实现验证跳转_返回验证结果

1. 需求背景 需要对某个请求url进行拦截&#xff0c;模拟是否可以进入某一个接口&#xff0c;如果拦截需要返回数据false&#xff0c;别问我为何不用intercept拦截器。 2. web.xml <filter> <filter-name>restfulFilter</filter-name> <filter-clas…

学习基础和C语言基础调查

一.你有什么技能比大多人&#xff08;超过90%以上&#xff09;更好&#xff1f; 答&#xff1a;回答这个问题之前应该加上“我觉得”三个字&#xff1b;其实我没什么太多太实用的技能&#xff0c;无非就是一些特别的、没什么新鲜有意义的技能&#xff0c;比如说我觉得有一些不太…

前端学习(2730):重读vue电商网站40之使用vue-table-with-tree-grid

安装新的依赖 vue-tabel-with-tree-gridvue-tabel-with-tree-grid 官方文档 安装完成后&#xff0c;在 main.js 入口文件内先导入 tree-tabel 然后全局注册组件 tree-tabel 页面中&#xff0c;我们使用了如下属性&#xff1a; data 确定我们的数据源&#xff0c;columns定义我…

年终个人工作总结

这里有25篇个人年终总结&#xff0c;涵盖各行各业 http://www.duanmeiwen.com/zongjie/fanwen/46847.html https://wenku.baidu.com/view/9cddf7653069a45177232f60ddccda38376be180.html https://jz.docin.com/p-322307149.html

腾讯TBS加载网页无法自适应记录

1. 所遇到的问题 webview加载指定网页无法实现自适应&#xff0c;之前在加载重构一个网页的时候&#xff0c;其实也遇到这种问题&#xff0c;然后就有了下面的一下步骤 WebSettings webSettings view.getSettings(); webSettings.setJavaScriptEnabled(true); // settings…

前端学习(2731):重读vue电商网站41之自定义格式化时间的全局过滤器

在 main.js 入口文件全局注册格式化时间的过滤器&#xff0c;代码如下所示&#xff1a; Javascript // 自定义格式化时间的全局过滤器 Vue.filter(dataFormat, function(originVal) {const dt new Date(originVal)const year dt.getFullYear()const mon (dt.getMonth() 1 …

sign check fail: check Sign and Data Fail

支付宝开发报错&#xff1a;com.alipay.api.AlipayApiException: sign check fail: check Sign and Data Fail 解决方法&#xff1a; 确认使用的支付宝公钥是否正确&#xff0c;不同的环境使用的支付宝公钥不同&#xff0c; 如沙箱环境、线上openapi网关和mapi网关对应的支付…

TensorFlow学习笔记(1):variable与get_variable, name_scope()和variable_scope()

Variable tensorflow中有两个关于variable的op&#xff0c;tf.Variable()与tf.get_variable()下面介绍这两个的区别 使用tf.Variable时&#xff0c;如果检测到命名冲突&#xff0c;系统会自己处理。使用tf.get_variable()时&#xff0c;系统不会处理冲突&#xff0c;而会报错 i…

前端学习(2732):重读vue电商网站42之添加富文本编辑器

vue-quill-editor 官方文档传送门 通过 vue-ui 界面&#xff0c;可以安装我们所需要的依赖&#xff0c;或者使用下文 npm 或 yarn安装。 NPM Js npm install vue-quill-editor --save# or yarn add vue-quill-editorMount with global Js import Vue from vue import VueQui…

1、Flutter_初体验_创建第一个应用_AndroidStudio_windows

1.前言 至于 Flutter 是啥&#xff0c;我就不在这啰嗦了&#xff0c;下面以 windows 为例&#xff0c;展示一下从安装 Flutter 到运行 APP 整个过程&#xff1b; 2.安装 Flutter 2.1、中文介绍文档&#xff1a;https://flutterchina.club/get-started/install/ &#xff08;我的…