在python中连接mysql数据库,并进行增删改查
数据库在开发过程中是最常见的,基本上在服务端的编程过程中都会使用到,mysql是较常见的一种数据库,这里介绍python如果连接到数据库中,并对数据库进行增删改查。
安装mysql的python扩展
使用MySQLdb
第三方扩展库连接mysql,首先在python解析器
下,查看MySQLdb是否已经安装,命令如下:
import MySQLdb
如果没有安装会出现下面的错误:
ImportError: No module named MySQLdb
安装MySQLdb
,分不同的平台,在windows下,在连接https://pypi.python.org/pypi/MySQL-python/1.2.5
下载MySQL-python-1.2.5.win32-py2.7.exe
进行安装,安装的过程跟普通的软件并没有什么区别。
在centos
下使用命令进行安装:
sudo yum install MySQL-python
安装完成后,在进行import MySQLdb
就不会再报错了。
连接mysql,并进行增删改查
通常在进行数据库操作时,程序使用的是如下的过程:
连接数据库,返回连接句柄
使用连接句柄进行SQL语句的操作
关闭数据库连接
如下的代码更加能过看清这个过程:
#!/usr/bin/python
#coding=utf-8
"""
start python 项目
"""
import MySQLdb
conn= MySQLdb.connect(
host='localhost',
port = 3306,
user='root',
passwd='123456',
db ='test',
)
cur = conn.cursor()
#执行sql语句
cur.execute("insert into bugingcode values('阿猫学编程')")
conn.commit()
#返回数据
cur.execute("select * from bugingcode")
datacur = cur.fetchall()
print datacur
#关闭连接
cur.close()
conn.close()
MySQLdb中常用函数
MySQLdb 连接数据库:
- conn= MySQLdb.connect #连接数据库
- cur = conn.cursor() #返回当前句柄
- commit() #提交
- rollback() #回滚
cursor执行sql语句的方法:
execute(self, query, args): 执行单条sql语句,接收的参数为sql语句本身和使用的参数列表,返回值为受影响的行数
callproc(self, procname, args) :用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数
executemany(self, query, args): 执行单挑sql语句,但是重复执行参数列表里的参数,返回值为受影响的行数
nextset(self) 移动到下一个结果集
cursor用来接收返回值的方法:
fetchall(self): 接收全部的返回结果行.
fetchmany(self, size=None) :接收size条返回结果行.如果size的值大于返回的结果行的数量,则会返回cursor.arraysize条数据.
fetchone(self): 返回一条结果行.
rowcount 这是一个只读属性,并返回执行execute() 方法后影响的行数。
scroll(self, value, mode='relative') :移动指针到某一行; 如果mode='relative',则表示从当前所在行移动value条,如果 mode='absolute',则表示从结果集的第一行移动value条.
关闭连接
关闭当前句柄:
cur.close()
关闭当前连接:
conn.close()
进一步封装
对MySQLdb
的封装,在网上有很多封装类,可以选择一个或者根据自己的需求,写一个适合自己的连接库。
更多教程:大家来编程
在python中连接mysql数据库,并进行增删改查的更多相关文章
- 【Python + Mysql】之用pymysql库连接Mysql数据库并进行增删改查操作
用pip下载pymysql并引用 具体请参考文章: <Python之MySQL数据库增删改查操作> <python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删 ...
- java连接mysql数据库 三 实现增删改查操作
同以前一样,先写一个数据库打开和关闭操作类 public class DBConnection { String driver = "com.mysql.jdbc.Driver"; ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
- Vc数据库编程基础MySql数据库的表增删改查数据
Vc数据库编程基础MySql数据库的表增删改查数据 一丶表操作命令 1.查看表中所有数据 select * from 表名 2.为表中所有的字段添加数据 insert into 表名( 字段1,字段2 ...
- 48.Python中ORM模型实现mysql数据库基本的增删改查操作
首先需要配置settings.py文件中的DATABASES与数据库的连接信息, DATABASES = { 'default': { 'ENGINE': 'django.db.backends.my ...
- mysql数据库单表增删改查命令
数据库DB-database-mysql 课程安排 第一天: 1.数据库定义以及设计 2.mysql服务端的安装 3.mysql-dos操作 库的操作 表的操作 4.mysql客户端navicate工 ...
- MySQL数据库(安装+增删改查)
一. 安装 下载地址 : https://dev.mysql.com/downloads/mysql/ 1. 安装步骤 (1) 选择5.7版本 (2) 针对操作系统的不同下载不同的版本 (3) 解压 ...
- MySQL数据库操作:“增删改查”,忘记密码重置等。
[注] 数据库的“增删查改”,参考原作者Wid:http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html#d11.感谢大佬们的技术分享 ...
- .net 连接SqlServer数据库及基本增删改查
一.写在前面 因为这学期选修的 .net 课程就要上机考试了,所以总结下.net 操作 SqlServer 数据的方法.(因为本人方向是 Java,所以对.net 的了解不多,但以下所写代码均是经过测 ...
随机推荐
- 题解【DP100题1~10】
哎~这事做晚了~ (Dp100计划T1) 只有蓝题及以上才会水题解 分行Dp,行间没有转移 \[ F[L][R] = max(F[L+1][R]+2^k \times V[L],F[L][R-1]+2 ...
- CF809C(找规律+数位DP)
老年选手需要多写一些思维题qwq. 通过打表很容易发现对于(i,j),值为(i-1)^(j-1)+1,然后本题就没了qwq. 矩阵差分还是很容易想到的,容斥成四个矩阵. 然后看到异或很容易想到三件事: ...
- 数学之美_正态分布(Python代码)
1 在概率统计中,我们针对某个事件当中各个样本发生的概率的频率进行统计,用一个函数的形式写出的这个概率的频率函数就叫做分布函数. 2 分布函数顾名思义,就是某个连续事件发生频率的汇总表示.再直白一点儿 ...
- MobileNets: Open-Source Models for Efficient On-Device Vision
https://research.googleblog.com/2017/06/mobilenets-open-source-models-for.html Wednesday, June 14, ...
- 吴裕雄--天生自然 PYTHON3开发学习:函数
def 函数名(参数列表): 函数体 # 计算面积函数 def area(width, height): return width * height def print_welcome(name): ...
- java数据库执行迁移报错Error creating bean with name 'flywayInitializer' defined in class path resource
报错原因 org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flywayI ...
- 【线段树】Interval GCD
题目描述 给定一个长度为N的数列A,以及M条指令 (N≤5*10^5, M<=10^5),每条指令可能是以下两种之一: "C l r d",表示把 A[l],A[l+1],- ...
- oracle_(第三课)网络服务配置
1.打开Net Manager 2.开始配置 3.检测 4.SQL Developer 检测 新创数据库连接,连接类型选择 TNS ,若在网络别名中能看到MYORCL,则证明你成功了
- 二十七、rsync同步工具
1.什么是rsync? Rsync是一款开源的.快速的,多功能的,可实现全量及增量的本地或者远程数据同步备份的优秀工具.windows和linux都可以. 官网:http:www.samba.org/ ...
- Linear Equations
4.1 Linear Equations with One Independent Variable