Python对数据库的增删改查
#!/usr/bin/env pythonimport MySQLdbDATABASE_NAME = 'hero'class HeroDB: # init class and create a database def __init__(self, name, conn, cur): self.name = name self.conn = conn self.cur = cur try: cur.execute('create database if not exists ' + name) conn.select_db(name) conn.commit() except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # create a table def createTable(self, name): try: ex = self.cur.execute if ex('show tables') == 0: ex('create table ' + name + '(id int, name varchar(20), sex int, age int, info varchar(50))') self.conn.commit() except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # insert single record def insert(self, name, value): try: self.cur.execute('insert into ' + name + ' values(%s,%s,%s,%s,%s)', value) except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # insert more records def insertMore(self, name, values): try: self.cur.executemany('insert into ' + name + ' values(%s,%s,%s,%s,%s)', values) except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # update single record from table # name: table name # values: waiting to update data def updateSingle(self, name, value): try: # self.cur.execute('update ' + name + ' set name=' + str(values[1]) + ', sex=' + str(values[2]) + ', age=' + str(values[3]) + ', info=' + str(values[4]) + ' where id=' + str(values[0]) + ';') self.cur.execute('update ' + name + ' set name=%s, sex=%s, age=%s, info=%s where id=%s;', value) except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # update some record from table def update(self, name, values): try: self.cur.executemany('update ' + name + ' set name=%s, sex=%s, age=%s, info=%s where id=%s;', values) except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # get record count from db table def getCount(self, name): try: count = self.cur.execute('select * from ' + name) return count except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # select first record from database def selectFirst(self, name): try: self.cur.execute('select * from ' + name + ';') result = self.cur.fetchone() return result except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # select last record from database def selectLast(self, name): try: self.cur.execute('SELECT * FROM ' + name + ' ORDER BY id DESC;') result = self.cur.fetchone() return result except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # select next n records from database def selectNRecord(self, name, n): try: self.cur.execute('select * from ' + name + ';') results = self.cur.fetchmany(n) return results except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # select all records def selectAll(self, name): try: self.cur.execute('select * from ' + name + ';') self.cur.scroll(0, mode='absolute') # reset cursor location (mode = absolute | relative) results = self.cur.fetchall() return results except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # delete a record def deleteByID(self, name, id): try: self.cur.execute('delete from ' + name + ' where id=%s;', id) except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # delete some record def deleteSome(self, name): pass # drop the table def dropTable(self, name): try: self.cur.execute('drop table ' + name + ';') except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) # drop the database def dropDB(self, name): try: self.cur.execute('drop database ' + name + ';') except MySQLdb.Error, e: print "Mysql Error %d: %s" % (e.args[0], e.args[1]) def __del__(self): if self.cur != None: self.cur.close() if self.conn != None: self.conn.close()Python对数据库的增删改查的更多相关文章
- python通过pymysql实现数据库的增删改查
今天实现了python对于数据库的增删改查工作: 具体的每一步的数据库的增删盖茶自己都实验过了. 掌握了基本的数据库操作语言.然后就是对于tuple()的认识. 以及对于查询语句中的:fetchone ...
- python链接oracle数据库以及数据库的增删改查实例
初次使用python链接oracle,所以想记录下我遇到的问题,便于向我这样初次尝试的朋友能够快速的配置好环境进入开发环节. 1.首先,python链接oracle数据库需要配置好环境. 我的相关环境 ...
- python代理池的构建4——mongdb数据库的增删改查
上一篇博客地址:python代理池的构建3--爬取代理ip 一.mongdb数据库的增删改查(Mongo_pool.py) #-*-coding:utf-8-*- ''' 实现代理池的数据库模块 ●作 ...
- python web.py操作mysql数据库,实现对数据库的增删改查操作
使用web.py框架,实现对mysql数据库的增删改查操作: 该示例代码中连接的是本地数据库testdb,user表,表结构比较简单,只有两个字段:mobile和passwd,类型均为字符型 实际应用 ...
- python测试开发django-13.操作数据库(增删改查)
前言 django的models模块里面可以新增一张表和字段,通常页面上的数据操作都来源于数据库的增删改查,django如何对msyql数据库增删改查操作呢? 本篇详细讲解django操作mysql数 ...
- 9.5Django操作数据库的增删改查
2018-9-5 18:10:52 先贴上笔记 day61 2018-04-28 1. 内容回顾 1. HTTP协议消息的格式: 1. 请求(request) 请求方法 路径 HTTP/1.1\r\n ...
- ThinkPHP实现对数据库的增删改查
好久都没有更新博客了,之前老师布置的任务总算是现在可以说告一段落了,今天趁老师还没提出其他要求来更新一篇博客. 今天我想记录的是我之前做项目,自己所理解的ThinkPHP对数据库的增删改查. 首先要说 ...
- Android学习---数据库的增删改查(sqlite CRUD)
上一篇文章介绍了sqlite数据库的创建,以及数据的访问,本文将主要介绍数据库的增删改查. 下面直接看代码: MyDBHelper.java(创建数据库,添加一列phone) package com. ...
- Android 系统API实现数据库的增删改查和SQLite3工具的使用
在<Android SQL语句实现数据库的增删改查>中介绍了使用sql语句来实现数据库的增删改查操作,本文介绍Android 系统API实现数据库的增删改查和SQLite3工具的使用. 系 ...
随机推荐
- HTTP 和 HTTPS
一.HTTP协议 最近看了一些网络通信方面的书籍,研究了一下 HTTP 和 TCP/IP,有了一些新的收获和理解,在这里做个归纳和总结. (1)什么是HTTP协议 HTTP (HyperText Tr ...
- VUE依赖webpack分别给开发环境和生产环境配置不同的常量值并在项目中动态引用
当在开发和产品上线的时候,我们经常会遇到在同一个地方由于环境的不同而地址也不同的情况,这时候如果在代码中将该地址写死,那势必会造成上线时手动改动,多人开发及多处使用该地址难以维护等一系列问题,为避免这 ...
- JVM、GC与HashMap
阿里巴巴突然来了个面试邀请电话,问了些java底层的东西,不知所措,所以专门花了些时间做了下学习,顺便记录下,好记性不如烂笔头. 一.对JAVA的垃圾回收机制(GC)的理解 不同于C/C++需要手工释 ...
- CentOS下SparkR安装部署:hadoop2.7.3+spark2.0.0+scale2.11.8+hive2.1.0
注:之前本人写了一篇SparkR的安装部署文章:SparkR安装部署及数据分析实例,当时SparkR项目还没正式入主Spark,需要自己下载SparkR安装包,但现在spark已经支持R接口,so更新 ...
- 从LINQ开始之LINQ to Objects(下)
前言 上一篇<从LINQ开始之LINQ to Objects(上)>主要介绍了LINQ的体系结构.基本语法以及LINQ to Objects中标准查询操作符的使用方法. 本篇则主要讨论LI ...
- python 2.7中urllib 2 与python 3.5中 urllib的区别。
python 3.x中urllib库和urilib2库合并成了urllib库. 其中urllib2.urlopen()变成了urllib.request.urlopen() urllib2.Reque ...
- sql备份(导出脚本)
第一步: 右键需要备份的数据库(这里以MyDB为例)-->任务-->生成脚本
- flash2print文档在线预览应用(java,.net)
一.背景 前段时间,LZ的boss突然给了出了这样一个需求:将原项目中的所有文章关联的附件TXT.PDF.office相关文件全部以flash的形式在网页上进行展示,便于预览.看似简单的需求,整个研发 ...
- [Leetcode] Sort, Hash -- 274. H-Index
Given an array of citations (each citation is a non-negative integer) of a researcher, write a funct ...
- python os模块学习
一.os模块概述 Python os模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的. 二.常用方法 1.os.name 输出字符串指示正在使用的平台.如果是wi ...