import time, uuidimport MySQLdb
import MySQLdb.cursors
db = MySQLdb.connect(host='localhost', user='root', passwd='root', db='user',cursorclass=MySQLdb.cursors.DictCursor)
cur = db.cursor()def next_id():return '%015d%s000' % (int(time.time() * 1000), uuid.uuid4().hex)def Add():print('please insert info for staff:')uid = next_id()name = input('name:')number = input('employee number:')sql = 'INSERT INTO users(user_id,user_name,employee_number) VALUES (%s,%s,%s)'try:cur.execute(sql,[uid,name,number])db.commit()except Exception as e:db.rollback()print('delete fail, reason: ' + e)# cur.close()# db.close()
3.3用戶查詢信息模塊 代碼如下:
import MySQLdb
import MySQLdb.cursors
db = MySQLdb.connect(host='localhost', user='root', passwd='root', db='user',cursorclass=MySQLdb.cursors.DictCursor)
cur = db.cursor()def staffInfo(Table):sql = 'select * from ' + Tablecur.execute(sql)EmployeeInfo = cur.fetchall()EmployeeInfo = list(EmployeeInfo)findName = input('Pelase enter name who you want to serch(if you need to find all, please input All):')if findName == 'All':print(EmployeeInfo)else:for staff in EmployeeInfo:if staff['user_name'] == findName:print("ID: %(user_id)s, Name: %(user_name)s,Employee Number: %(employee_number)s" %staff)breakelse:print('no this staff')}
3.4用戶刪除信息模塊 代碼如下:
import MySQLdb
import MySQLdb.cursors
db = MySQLdb.connect(host='localhost', user='root', passwd='root', db='user',cursorclass=MySQLdb.cursors.DictCursor)
cur = db.cursor()def Delete():name = input('Please enter the name of the employee you want to delete:')sql = 'delete from users where user_name = %s'try:cur.execute(sql, [name])db.commit()print('delete success')except Exception as e:db.rollback()print(e)# cur.close()# db.close()'''for staff in Table:if staff['name'] == name:# 查找索引Index = Table.index(staff)del Table[Index]print('Success')break
'''
3.5用戶修改信息模塊 代碼如下:
import MySQLdb
import MySQLdb.cursors
db = MySQLdb.connect(host='localhost', user='root', passwd='root', db='user',cursorclass=MySQLdb.cursors.DictCursor)
cur = db.cursor()def Modify(Table):while True:Query = input('Please enter the employee to be modified (if you want to exit, please enter exit):')if Query == 'exit':breakelse:sql = "UPDATE users SET employee_number=%s WHERE user_name=%s;"employeeNumber = input('New employee number:')try:# 執行SQL語句cur.execute(sql, [employeeNumber, Query])print('success')# 提交事務db.commit()except Exception as e:db.rollback()print('fail')print(e)# 輸出修改前和修改后,供用戶確認,如果用戶輸入yes,則執行修改,如果用戶輸入no,則不修改# while True:# Query = input('Please enter the employee to be modified (if you want to exit, please enter exit):')# if Query == 'exit':# break# else:# for staff in Table:# if staff['name'] == Query:# newAge = input('New age:')# newContractor = input("Isn't this employee a contractor?")# if newContractor == 'yes':# newContractor = 0# elif newContractor == 'no':# newContractor = 1# staff['age'] = newAge# staff['contractor'] = newContractor# print('name:%s,\nage:%s,\n,contractor:%s\n' %(staff['name'],staff['age'],staff['contractor']))# break!# else:# print('No information for this employee,please re-enter')