Python Sql数据库增删改查操作简单封装


Posted in Python onApril 18, 2016

本文实例为大家分享了如何利用Python对数据库的增删改查进行简单的封装,供大家参考,具体内容如下

1.insert    

import mysql.connector
import os
import codecs
#设置数据库用户名和密码
user='root';#用户名
pwd='root';#密码
host='localhost';#ip地址
db='mysql';#所要操作数据库名字
charset='UTF-8'
cnx = mysql.connector.connect(user=user,password=pwd, host=host, database=db)
#设置游标
cursor = cnx.cursor(dictionary=True)
#插入数据
#print(insert('gelixi_help_type',{'type_name':'\'sddfdsfs\'','type_sort':'283'}))
def insert(table_name,insert_dict):
  param='';
  value='';
  if(isinstance(insert_dict,dict)):
    for key in insert_dict.keys():
      param=param+key+","
      value=value+insert_dict[key]+','
    param=param[:-1]
    value=value[:-1]
  sql="insert into %s (%s) values(%s)"%(table_name,param,value)
  cursor.execute(sql)
  id=cursor.lastrowid
  cnx.commit()
  return id

2.delete    

def delete(table_name,where=''):
  if(where!=''):
    str='where'
    for key_value in where.keys():
      value=where[key_value]
      str=str+' '+key_value+'='+value+' '+'and'
    where=str[:-3]
    sql="delete from %s %s"%(table_name,where)
    cursor.execute(sql)
    cnx.commit()

3.select    

#取得数据库信息
# print(select({'table':'gelixi_help_type','where':{'help_show': '1'}},'type_name,type_id'))
def select(param,fields='*'):
  table=param['table']
  if('where' in param):
    thewhere=param['where']
    if(isinstance (thewhere,dict)):
      keys=thewhere.keys()
      str='where';
      for key_value in keys:
        value=thewhere[key_value]
        str=str+' '+key_value+'='+value+' '+'and'
      where=str[:-3]
  else:
    where=''
  sql="select %s from %s %s"%(fields,table,where)
  cursor.execute(sql)
  result=cursor.fetchall()
  return result

4.showtable,showcolumns    

#显示建表语句
#table string 表名
#return string 建表语句
def showCreateTable(table):
  sql='show create table %s'%(table)
  cursor.execute(sql)
  result=cursor.fetchall()[0]
  return result['Create Table']
#print(showCreateTable('gelixi_admin'))
#显示表结构语句
def showColumns(table):
  sql='show columns from %s '%(table)
  print(sql)
  cursor.execute(sql)
  result=cursor.fetchall()
  dict1={}
  for info in result:
    dict1[info['Field']]=info
  return dict1

以上就是Python Sql数据库增删改查操作的相关操作,希望对大家的学习有所帮助。

Python 相关文章推荐
在主机商的共享服务器上部署Django站点的方法
Jul 22 Python
python对json的相关操作实例详解
Jan 04 Python
关于numpy中np.nonzero()函数用法的详解
Feb 07 Python
教你用Python创建微信聊天机器人
Mar 31 Python
python爬虫之模拟登陆csdn的实例代码
May 18 Python
Python实现的txt文件去重功能示例
Jul 07 Python
Python爬虫——爬取豆瓣电影Top250代码实例
Apr 17 Python
python正则表达式匹配不包含某几个字符的字符串方法
Jul 23 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
Dec 12 Python
如何在Python 游戏中模拟引力
Mar 27 Python
如何在python中实现线性回归
Aug 10 Python
如何使用Python进行PDF图片识别OCR
Jan 22 Python
python使用paramiko实现远程拷贝文件的方法
Apr 18 #Python
python UNIX_TIMESTAMP时间处理方法分析
Apr 18 #Python
python动态加载包的方法小结
Apr 18 #Python
python实现按行切分文本文件的方法
Apr 18 #Python
Python获取linux主机ip的简单实现方法
Apr 18 #Python
Python实现递归遍历文件夹并删除文件
Apr 18 #Python
Python简单实现TCP包发送十六进制数据的方法
Apr 16 #Python
You might like
PHP取进制余数函数代码
2012/01/19 PHP
php文件上传的例子及参数详解
2013/12/12 PHP
9条PHP编程小知识及易犯的小错误
2015/01/22 PHP
php实现修改新闻时删除图片的方法
2015/05/12 PHP
详解PHP中instanceof关键字及instanceof关键字有什么作用
2015/11/05 PHP
laravel框架 api自定义全局异常处理方法
2019/10/11 PHP
使用jQuery插件创建常规模态窗口登陆效果
2013/08/23 Javascript
jQuery实现的fixedMenu下拉菜单效果代码
2015/08/24 Javascript
js贪吃蛇游戏实现思路和源码
2016/04/14 Javascript
JavaScript 消息框效果【实现代码】
2016/04/27 Javascript
基于vue2.0+vuex的日期选择组件功能实现
2017/03/13 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
解析Json字符串的三种方法日常常用
2018/05/02 Javascript
Echarts动态加载多条折线图的实现代码
2019/05/24 Javascript
layui给下拉框、按钮状态、时间赋初始值的方法
2019/09/10 Javascript
解决Vue keep-alive 调用 $destory() 页面不再被缓存的情况
2020/10/30 Javascript
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
python图像处理之镜像实现方法
2015/05/30 Python
DRF框架API版本管理实现方法解析
2020/08/21 Python
python3中布局背景颜色代码分析
2020/12/01 Python
推荐10个HTML5响应式框架
2016/02/25 HTML / CSS
红色康乃馨酒店:Red Carnation Hotels
2017/06/22 全球购物
阿根廷在线宠物商店:Puppis
2018/03/23 全球购物
创立科技Java面试题
2015/11/29 面试题
北大青鸟学生求职信
2013/09/24 职场文书
采购部岗位职责
2013/11/24 职场文书
高级护理专业毕业生推荐信
2013/12/25 职场文书
财务主管的岗位职责
2013/12/30 职场文书
建筑工地质量标语
2014/06/12 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
护士长2014年终工作总结
2014/11/11 职场文书
新闻简讯格式及范文
2015/07/22 职场文书
2015年幼儿园班主任个人工作总结
2015/10/22 职场文书
MSSQL基本语法操作
2022/04/11 SQL Server
最新动漫情报:2022年7月新番定档超过30部, OVERLORD骨王第四季也在其中噢
2022/05/04 日漫
nginx设置资源请求目录的方式详解
2022/05/30 Servers