python2.7完成curd
2014-04-26 22:48
417 查看
新建数据表:
数据库类:
cecc
CREATE TABLE `js_user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(255) NOT NULL, `age` int(11) NOT NULL, `addtime` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
数据库类:
#!/usr/bin/python #encoding=utf8 import MySQLdb import sys #数据库连接 class Mysqldb(): __user = "root" #数据库用户名 __passwd = "" #数据库密码 __db = "test" #数据库名称 __host = "localhost" #数据库链接地址 __charset = "utf8" conn = "" cursor = "" #数据库连接 def __init__(self): try: self.conn = MySQLdb.connect(host=self.__host,user=self.__user,passwd=self.__passwd,db=self.__db,charset=self.__charset) except Exception, e: print e sys.exit() #得到数据库操作句柄 def getCursor(self): try: self.cursor = self.conn.cursor(cursorclass = MySQLdb.cursors.DictCursor) #表示通过字段获取 return self.cursor except Exception ,e: print e sys.exit() #关闭数据库资源 def close(self): try: if self.cursor: self.cursor.close() if self.conn: self.conn.close() except Exception ,e: print e sys.exit()
#!/usr/bin/python # -*- coding: utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf8') class User(): def __init__(self): pass def setId(self,id): self.__id = id def setUsername(self,username): self.__username = username def setAge(self,age): self.__age = age def setAddtime(self,addtime): self.__addtime = addtime def getId(self): return self.__id def getUsername(self): return self.__username def getAge(self): return self.__age def getAddtime(self): return self.__addtime def show(self): print "用户名:%s,年龄:%d,添加时间:%d" %(self.getUsername(),self.getAge(),self.getAddtime())
#!/usr/bin/python # -*- coding: UTF-8 -*- import sys import time sys.path.append('..') from vo.User import User from db.Mysqldb import Mysqldb class UserDao(): def __init__(self): mysqldb = Mysqldb() self.cusror = mysqldb.getCursor() #根据用户名查询用户 def getUserInfoByName(self,username): sql = "select id,username,age,addtime from js_user where username=%s" param = (username) rowsnum = self.cusror.execute(sql,param) if rowsnum: user = User() row = self.cusror.fetchone() user.setId(row['id']) user.setUsername(row['username']) user.setAge(row['age']) user.setAddtime(row['addtime']) return user else: return "" #添加新用户 def addUserInfo(self,user): sql = "insert into js_user(username,age,addtime) values(%s,%s,%s)" param = (user.getUsername(),user.getAge(),user.getAddtime()) affectrows = self.cusror.execute(sql,param) if affectrows > 0 : return affectrows else: return 0 #查询所有用户信息 def getAllUserInfoList(self): sql = "select id,username,age,addtime from js_user" rowsnum = self.cusror.execute(sql) userInfoList = [] if rowsnum >0 : userList = self.cusror.fetchall() for row in userList: user = User() user.setId(row['id']) user.setUsername(row['username']) user.setAge(row['age']) user.setAddtime(row['addtime']) userInfoList.append(user) return userInfoList else: return "" #删除用户 def deleteUserInfoByUid(self,uid): sql = "delete from js_user where id = %s" param = (uid) affectRow = self.cusror.execute(sql,param) if affectRow > 0: return affectRow else: return "" #更新操作 def updateUserInfo(self,user): sql = "update js_user set username=%s,age=%s where id=%s" param = (user.getUsername(),user.getAge(),user.getId()) affectRow = self.cusror.execute(sql,param) if affectRow > 0: return affectRow else: return 0
#!/usr/bin/python #encoding = utf8 import sys sys.path.append('..') from dao.UserDao import UserDao class UserService(): def __init__(self): self.userDao = UserDao() def getUserInfoByName(self,username): return self.userDao.getUserInfoByName(username) def addUserInfo(self,user): return self.userDao.addUserInfo(user) def getAllUserInfoList(self): return self.userDao.getAllUserInfoList() def deleteUserInfoByUid(self,uid): return self.userDao.deleteUserInfoByUid(uid) def updateUserInfo(self,user): return self.userDao.updateUserInfo(user)
#!/usr/bin/python #coding=utf-8 import sys import time from service.UserService import UserService from vo.User import User reload(sys) sys.setdefaultencoding('utf8') #添加用户 def addUser(): user = User() userService = UserService() username = raw_input('请输入用户名称') while username.strip()=="" or user!="": if username.strip() == "": print '用户名称不能为空!' username = raw_input('请输入用户名称!') else: user = userService.getUserInfoByName(username.strip()) if user!="": print '用户名称已经存在!' username = raw_input('请输入用户名称!') age = raw_input('请输入用户年龄') while age.isdigit()==False: print '年龄必须是一个整数!' age = raw_input('请输入用户年龄') user = User() user.setUsername(username.strip()) user.setAge(int(age)) user.setAddtime(int(time.time())) affectRow = userService.addUserInfo(user) return affectRow #用户删除 def deleteUser(): username = raw_input("请输入要删除人的名称!") user = "" userService = UserService() while username=="" or user=="": if username.strip() == "": print '用户名称不能为空!' username = raw_input('请输入用户名称!') else: print username user = userService.getUserInfoByName(username.strip()) if user=="": print '用户名称不存在!' username = raw_input('请输入用户名称!') return userService.deleteUserInfoByUid(user.getId()) #查找用户信息 def selectUser(): username = raw_input("请输入要查询人的名称!") user = "" userService = UserService() while username=="" or user=="": if username.strip() == "": print '用户名称不能为空!' username = raw_input('请输入用户名称!') else: user = userService.getUserInfoByName(username.strip()) if user=="": print '用户名称不存在!' username = raw_input('请输入用户名称!') addtime = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(user.getAddtime())) print "用户ID: %s,用户名称:%s,年龄:%s,添加时间:%s\r\n" %(user.getId(),user.getUsername(),user.getAge(),addtime) return True #更新用户信息 def updateUser(): username = raw_input("请输入要更新人的名称!") user = "" userService = UserService() while username=="" or user=="": if username.strip() == "": print '用户名称不能为空!' username = raw_input('请输入用户名称!') else: user = userService.getUserInfoByName(username.strip()) if user=="": print '用户名称不存在!' username = raw_input('请输入用户名称!') age = raw_input('请输入用户年龄') while age.isdigit()==False: print '年龄必须是一个整数!' age = raw_input('请输入用户年龄') user.setAge(int(age)) return userService.updateUserInfo(user) #查找所以信息 def listUser(): userService = UserService() userList = userService.getAllUserInfoList() if userList: for user in userList: addtime = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(user.getAddtime())) print "用户ID: %s,用户名称:%s,年龄:%s,添加时间:%s" %(user.getId(),user.getUsername(),user.getAge(),addtime) return True else: return False #错误处理 def error(): print '输入参数非法!!!!'
#!/usr/bin/python #encoding = utf8 import sys from service.UserService import UserService from operate import addUser,deleteUser,selectUser,listUser,updateUser,error reload(sys) sys.setdefaultencoding('utf8') flag = False; #标示用户是否合法 decDict = {'add':'添加用户','delete':'删除用户','select':'查询用户','list':'列表所有用户','update':'更新信息','exit':'退出'} while flag==False: username = raw_input("请输入用户名 :"); userpwd = raw_input("请输入用户密码 :"); if username != 'xiongjin' or userpwd!='xiongjin': print '密码错误!!!' pass else: flag = True for k,v in decDict.iteritems(): print v + ':' + k operateDict = {'add':addUser,'delete':deleteUser,'select':selectUser,'list':listUser,'update':updateUser,'error':error} operateName = raw_input("请输入您要操作的选项 :"); while operateName!='exit': if operateDict.has_key(operateName)==False: print '参数错误!!' operateName = "exit" else: if operateDict.get(operateName,'error')(): print '操作成功' for k,v in decDict.iteritems(): print v + ':' + k else: print '操作失败' operateName = raw_input("请输入您要操作的选项 :"); print '退出成功!'
cecc
相关文章推荐
- 使用Python 2.7 CURD 操作非关系型数据库MongoDB
- python安装了2.7之后终端无法使用退格,上下左右
- Python中文处理,完成功能的实用化
- Python2.7 paramiko模块
- centos6.5 x86_64 python2.6升级2.7
- Centos 6.4 python 2.6 升级到 2.7
- 想要快速完成一个Python项目,离不开这些开源库
- [Python 2.7] Hello World CGI HTTP Server
- [记录]Python2.7使用argparse模块
- Ubuntu16.04自带Python2.7和Python3,为什么用pip安装的包在Python3中不能用
- Python2.7+pycharm Win7 64bit安装教程 附:机器学习numpy+scipy+sklearn安装组
- 使用markdown创作技术博客的示例-以Python完成定时截屏为例
- win10安装python2.7以及pip9.0.1
- Ubuntu16.04 python2.7升级python3.5
- python 2.7 中文教程-3:非正式教程
- RHEL5 5升级python版本(2.4>2.7)
- python - 一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机的分配.
- windowXP下解决python2.7+Django-1.3.1中:importError:no module named django.core
- centos5.X 32位系统上给python2.7安装lxml
- CentOS 7安装Python3.5,并与Python2.7兼容并存