Python对数据库的增删改查
#!/usr/bin/env python
import MySQLdb
DATABASE_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工具的使用. 系 ...
随机推荐
- CI集成phpunit Error: No code coverage driver is available 的解决
CI集成phpunit时,运行报No code coverage driver is available的错误,如下图: yanglingdeMacBook-Pro:tests yangling$ p ...
- ImageIO.write不好用了
今天奇怪的发现这个下面不好使了,即用ImageIO把图片写入网络流中,第一次还好使,对于同一个SocketOutputStream,第二次使用write方法就不好使了,变成了死等. 网上搜了资料搜不到 ...
- SQL server 用命令行更改数据库
(计应154兰家才) CREATE DATABASE 数据库名 ON [PRIMARY] ( <数据文件参数> [,…n] [<文件组参数>] ) [LOG ON] ( ...
- JVM类加载续
上一篇理解了JVM类加载过程的第一个阶段,这篇来说说剩下的阶段:验证.准备.解析.初始化.需要注意的是,这些阶段(解析除外)只是按照这个顺序开始,但是执行的过程中可能存在交叉. 验证:就是要对加载的二 ...
- Day1-模块初识
模块,也叫库,分为标准库和第三方库.标准库,直接导入使用,比如import getpass:第三方库,需下载安装才能使用,比如paramiko: 一.sys模块 import sys print(sy ...
- 浏览器如何生成URL
点击页面中的链接,浏览器会根据源码中相对URL路径作不同的处理: (1)有协议名称,但没有域名信息 对于这种形式的URL,它的协议,路径,查询字符串和片段ID都以它自身为准,但域名信息的部分,以引用它 ...
- 极光开发者沙龙 之 移动应用性能优化实践 【一】旧酒新瓶——换个角度提升 App 性能与质量
旧酒新瓶--换个角度提升 App 性能与质量 主讲人:高亮亮 --- 饿了么移动技术部高级iOS工程师,负责饿了么商家版iOS APP开发,对架构和系统底层有深入研究,擅长移动性能分析,troub ...
- PHP Laravel 环境与框架结构
MAMP: 开发环境 php+apach+mysqlLaravel: 框架5.2phpstorm: 工具IDE目录结构:app:运行 核心代码bootstrap : 框架启动,加载config: ...
- python-散列表
散列表 简单地来说,通过某种函数关系将输入的数据映射为数字,使得数字与数据有着一一对应的关系. 其中,散列函数必须满足一定的要求: 它必须是一致的.例如,当你输入mag时得到4,那么每当输入mag时, ...
- javaSE_06Java中的数组(array)-提高练习
1.求1!+2!+3!+···+30!的和,定义一个方法 public class Test1{ public static void main(String[] args){ //1.求1!+2!+ ...