python 操作数据库的常用SQL命令
这俩天在学习PYTHON操作数据库的知识。其实基本SQL命令是与以前学习的MYSQL命令一致,只是增加了一些PYTHON语句。
1,安装pymysql,并导入。
import pymysql
2,因为用的就python2,所以加上一步。
import sys
reload(sys)
sys.setdefaultencoding('gb18030') 3,因为我已经在本地下载了mysql数据库,并新建了表。
所以这一步,我就直接连接本地的数据库就可以了。
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao') ###这里我是连接的本地数据库,没有写端口号3306,数据库名称:caipiao,用户是root,
cur=conn.cursor()
###这里就是我们要进行的操作步骤,先空着。####
conn.commit()
cur.close() ##################################################下面来讲一下常用的SQL命令#####################################
1,插入数据:(表名也是:caipiao)
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao')
cur=conn.cursor()
re=cur.execute("insert into caipiao values(1,'baozi',1,1),(2,'mantou',2,2),(3,'youtiao',3,3)")
conn.commit()
cur.close()
conn.close()
print (re)
现在我们可以访问我们本地的数据库,可以发现我们已经成功插入了三条数据。(id=1,name='baozi',touzhu=1,yingli=1)(*******)(******) 2,查询数据:
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao')
cur=conn.cursor()
cur.execute("select* from caipiao")
ret1=cur.fetchall() ####把查询到的数据都显示出来。
print (ret1) ret2=cur.fetchmany(3) ###获取表中前3条数据并打印出来
print (ret2) ret3=cur.fetchone() ###获取表中第一行数据并打印出来
print (ret3) conn.commit()
cur.close()
conn.close() 3,删除数据
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao')
cur=conn.cursor()
cur.execute("delete from caipiao where id=1")
conn.commit()
cur.close()
conn.close() 4,更改数据
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao')
cur=conn.cursor()
cur.execute("update caipiao set name='doujiang' where id=2")
conn.commit()
cur.close()
conn.close() 5,fetch数据类型 (关于默认获取的数据是元祖类型,如果想要字典类型的数据)
conn=pymysql.connect(host='127.0.0.1',user='root',password='123456',db='caipiao')
cur=conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute("select* from caipiao")
re=cur.fetchall()
print (re)
打印出来就是:###
[{u'touzhu': '10', u'caizhong': 'chongqingshishicai', u'yingli': '10', u'id': 3, u'name': 'baozi'}, {u'touzhu': '10', u'caizhong': 'chongqingxingyun', u'yingli': '20', u'id': 4, u'name': 'youtiao'}, {u'touzhu': '10', u'caizhong': 'xinjiangshishicai', u'yingli': '30', u'id': 5, u'name': 'mayuan'}, {u'touzhu': '10', u'caizhong': 'dafashishicai', u'yingli': '40', u'id': 6, u'name': 'mianbao'}, {u'touzhu': '10', u'caizhong': 'jilinkuaisan', u'yingli': '50', u'id': 7, u'name': 'changfen'}, {u'touzhu': '10', u'caizhong': 'anhuikuaisan', u'yingli': '60', u'id': 8, u'name': 'bingan'}, {u'touzhu': '10', u'caizhong': 'dafashishicai', u'yingli': '50', u'id': 9, u'name': 'mianbao'}, {u'touzhu': '10', u'caizhong': 'beijingsaiche', u'yingli': '20', u'id': 2, u'name': 'baozi'}, {u'touzhu': '11', u'caizhong': 'chongqingshishicai', u'yingli': '11', u'id': 7, u'name': 'yiyi'}, {u'touzhu': '12', u'caizhong': 'dafakuaisan', u'yingli': '12', u'id': 8, u'name': 'xiha'}, {u'touzhu': '11', u'caizhong': 'dafa1', u'yingli': '12', u'id': 8, u'name': 'man1'}, {u'touzhu': '12', u'caizhong': 'dafa2', u'yingli': '13', u'id': 9, u'name': 'man2'}, {u'touzhu': '11', u'caizhong': 'dafa1', u'yingli': '12', u'id': 8, u'name': 'man1'}, {u'touzhu': '12', u'caizhong': 'dafa2', u'yingli': '13', u'id': 9, u'name': 'man2'}, {u'touzhu': '11', u'caizhong': 'dafa1', u'yingli': '12', u'id': 8, u'name': 'man1'}, {u'touzhu': '12', u'caizhong': 'dafa2', u'yingli': '13', u'id': 9, u'name': 'man2'}, {u'touzhu': '11', u'caizhong': 'dafa1', u'yingli': '12', u'id': 8, u'name': 'man1'}, {u'touzhu': '12', u'caizhong': 'dafa2', u'yingli': '13', u'id': 9, u'name': 'man2'}, {u'touzhu': '11', u'caizhong': 'dafa1', u'yingli': '12', u'id': 8, u'name': 'man1'}, {u'touzhu': '12', u'caizhong': 'dafa2', u'yingli': '13', u'id': 9, u'name': 'man2'}]
######
conn.commit()
cur.close()
conn.close()
python 操作数据库的常用SQL命令的更多相关文章
- Python操作数据库之 MySQL
Python操作数据库之MySQL 一.安装Python-MySQLdb模块 Python-MySQLdb是一个操作数据库的模块,Python 通过它对 mysql 数据实现各种操作. 如果要源码安装 ...
- Python学习笔记 - day11 - Python操作数据库
MySQL的事务 MySQL的事务支持不是绑定在MySQL服务器本身,而是与存储引擎相关,MySQL的两种引擎如下: 1.MyISAM:不支持事务,用于只读程序提高性能 2.InnoDB:支持ACID ...
- python操作数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- 零基础学Python--------第11章 使用Python操作数据库
第11章 使用Python操作数据库 11.1 数据库编程接口 在项目开发中,数据库应用必不可少.虽然数据库的种类有很多,如SQLite.MySQL.Oracle等,但是它们的功能基本都是一样的,为了 ...
- Python接口测试实战3(上)- Python操作数据库
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- 孤荷凌寒自学python第四十四天Python操作 数据库之准备工作
孤荷凌寒自学python第四十四天Python操作数据库之准备工作 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天非常激动地开始接触Python的数据库操作的学习了,数据库是系统化设计 ...
- Python操作数据库及hashlib模块
一.hashlib模块 hashlib模块,主要用于加密相关的操作,在python3的版本里,代替了md5和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA51 ...
- python操作数据库PostgreSQL
1.简述 python可以操作多种数据库,诸如SQLite.MySql.PostgreSQL等,这里不对所有的数据库操作方法进行赘述,只针对目前项目中用到的PostgreSQL做一下简单介绍,主要包括 ...
- shell编程系列23--shell操作数据库实战之mysql命令参数详解
shell编程系列23--shell操作数据库实战之mysql命令参数详解 mysql命令参数详解 -u 用户名 -p 用户密码 -h 服务器ip地址 -D 连接的数据库 -N 不输出列信息 -B 使 ...
随机推荐
- 【前端技术】一篇文章搞掂:微信小程序
实战: 1.[openId]获取openId 有如下几种方法: 通过wx.login()获取临时登录凭证 code,然后通过code2session获取openId wx.login():https: ...
- 20175120彭宇辰 《Java程序设计》第十周学习总结
教材内容总结 十二章 Java多线程机制 一.进程与线程.操作系统与进程 -线程不是进程,是比进程更小的执行单位.但与进程不同的是,线程的中断和恢复可以更加节省系统的开销. -线程可以共享进程中的某些 ...
- Java并发AtomicIntegerArray类
java.util.concurrent.atomic.AtomicIntegerArray类提供了可以以原子方式读取和写入的底层int数组的操作,还包含高级原子操作. AtomicIntegerAr ...
- 开发环境绑定host vue 返回 invalid host header
事情:使用域名绑定host为本机电脑ip,vue返回 invalid host header 原因:新版的webpack-dev-server出于安全考虑,默认检查hostname,如果hostnam ...
- 【转】linux下使用man查看C函数用法
大家都知道在Unix/Linux中有个man命令,可以查询常用的命令,函数.可是对于我们这样只知道用"man 函数名"来查询的人来说,会遇到很多问题,比如: man read,我想 ...
- java反射-学习
使用Java反射机制可以在运行时期获取Java类的信息,可获取以下相关的内容: Class对象 类名 修饰符 包信息 父类 实现的接口 构造器 方法 变量 注解 简单的反射例子: 1.获取class对 ...
- var name全局变量 typeof 类型一直是 string
在全局中 window.name=" "; name属性在全局中比较特殊,不管var name = 任何值,它最终等于的都是字符串 console.log(window.name ...
- 使用jquery.validate组件进行前端数据验证并实现异步提交前验证检查
学习如鹏网掌上组的项目开发,使用到了前端验证,视频里使用的ValidateForm验证框架,但是我使用的Hui的框架中使用的是jquery.validate验证框架 所以自行学习jquery.vali ...
- 用java 调用oracle存储过程总结
SSM-Mybatis调用Oracle存储过程返回结果集(游标)示例 https://www.jianshu.com/p/0ae6d9d66d61 用java调用oracle存储过程总结 //1.ca ...
- Nginx的应用之动静分离
Nginx 的动静分离 我们通过中间件将动态请求和静态请求进行分离,减少了不必要的请求消耗和延时. 动静分离后,即使动态服务不可用,但静态资源不会受到影响. 应用实例 1.准备环境 系统 角色 主机名 ...