`
uule
  • 浏览: 6358860 次
  • 性别: Icon_minigender_1
  • 来自: 一片神奇的土地
社区版块
存档分类
最新评论

[python基础] MySQL数据库连接

 
阅读更多

Python3 MySQL 数据库连接

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。

 

数据库连接

以下实例链接Mysql的TESTDB数据库:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()

# 使用 execute()  方法执行 SQL 查询 
cursor.execute("SELECT VERSION()")

# 使用 fetchone() 方法获取单条数据.
data = cursor.fetchone()

print ("Database version : %s " % data)

# 关闭数据库连接
db.close()

 

执行以上脚本输出结果如下:

Database version : 5.5.20-log

 

 

创建数据库表

如果数据库连接存在我们可以使用execute()方法来为数据库创建表,如下所示创建表EMPLOYEE:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()

# 使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")

# 使用预处理语句创建表
sql = """CREATE TABLE EMPLOYEE (
         FIRST_NAME  CHAR(20) NOT NULL,
         LAST_NAME  CHAR(20),
         AGE INT,  
         SEX CHAR(1),
         INCOME FLOAT )"""

cursor.execute(sql)

# 关闭数据库连接
db.close()

 

数据库插入操作

以下实例使用执行 SQL INSERT 语句向表 EMPLOYEE 插入记录:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 插入语句
sql = """INSERT INTO EMPLOYEE(FIRST_NAME,
         LAST_NAME, AGE, SEX, INCOME)
         VALUES ('Mac', 'Mohan', 20, 'M', 2000)"""
		 
		 
#sql也可写成以下方式
sql = "INSERT INTO EMPLOYEE(FIRST_NAME, \
       LAST_NAME, AGE, SEX, INCOME) \
       VALUES ('%s', '%s', '%d', '%c', '%d' )" % \
       ('Mac', 'Mohan', 20, 'M', 2000)
		 
try:
   # 执行sql语句
   cursor.execute(sql)
   # 提交到数据库执行
   db.commit()
except:
   # 如果发生错误则回滚
   db.rollback()

# 关闭数据库连接
db.close()

 

数据库查询操作

Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据。

fetchone(): 该方法获取下一个查询结果集。结果集是一个对象

fetchall()  : 接收全部的返回结果行.

rowcount: 这是一个只读属性,并返回执行execute()方法后影响的行数。

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 查询语句
sql = "SELECT * FROM EMPLOYEE \
       WHERE INCOME > '%d'" % (1000)
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 获取所有记录列表
   results = cursor.fetchall()
   for row in results:
      fname = row[0]
      lname = row[1]
      age = row[2]
      sex = row[3]
      income = row[4]
       # 打印结果
      print ("fname=%s,lname=%s,age=%d,sex=%s,income=%d" % \
             (fname, lname, age, sex, income ))
except:
   print ("Error: unable to fecth data")

# 关闭数据库连接
db.close()

 

以上脚本执行结果如下:

fname=Mac, lname=Mohan, age=20, sex=M, income=2000

 

更新操作

更新操作用于更新数据表的的数据,以下实例将 TESTDB表中的 SEX 字段全部修改为 'M',AGE 字段递增1:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 更新语句
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1
                          WHERE SEX = '%c'" % ('M')
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 提交到数据库执行
   db.commit()
except:
   # 发生错误时回滚
   db.rollback()

# 关闭数据库连接
db.close()

 

删除操作

删除操作用于删除数据表中的数据,以下实例演示了删除数据表 EMPLOYEE 中 AGE 大于 20 的所有数据:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost","testuser","test123","TESTDB" )

# 使用cursor()方法获取操作游标 
cursor = db.cursor()

# SQL 删除语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (20)
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 提交修改
   db.commit()
except:
   # 发生错误时回滚
   db.rollback()

# 关闭连接
db.close()

 

。。

 

 

分享到:
评论

相关推荐

    python数据库(mysql)连接代码

    python连接mysql数据库代码。必须先下载安装mysql数据库,并启动数据库

    python连接mysql数据库脚本工具

    在本场景中,我们关注的是使用Python连接MySQL数据库的脚本工具。MySQL是一个广泛使用的开源关系型数据库管理系统,它提供了高效的存储和查询数据的能力。接下来,我们将深入探讨如何使用Python连接到MySQL数据库并...

    python连接mysql数据库示例代码

    1. 如何使用 Python 的 MySQL 连接器库(如 `mysql-connector-python`)进行数据库连接和操作。 2. 数据库的基本操作,包括创建数据库和表、插入数据、查询数据、更新数据和删除数据的实现方法。 3. 理解数据库连接...

    python连接MySQL数据库问题.docx

    - 操作完成后,关闭游标和数据库连接。 #### 二、关键方法详解 1. **cursor() 方法** - `cursor()` 方法用于创建一个游标对象。游标是 Python 和数据库之间交互的主要方式。通过游标,可以执行 SQL 语句并获取...

    Python访问Mysql数据库

    以下是一个简单的示例,展示了如何使用`mysql-connector-python`连接MySQL数据库并执行查询: ```python import mysql.connector # 创建连接 cnx = mysql.connector.connect(user='username', password='password'...

    Python 连接MySQL数据库时自动开启服务器 Python源码

    Python 连接MySQL数据库时自动开启服务器 Python源码Python 连接MySQL数据库时自动开启服务器 Python源码Python 连接MySQL数据库时自动开启服务器 Python源码Python 连接MySQL数据库时自动开启服务器 Python源码...

    基于Python的MYSQL数据库访问技术.pdf

    本文将深入探讨如何使用Python语言访问MySQL数据库,通过实例演示如何在Eclipse集成开发环境中通过Python-MySQLconnector实现数据库的增、删、改、查操作。 首先,让我们了解Python DB-API的相关知识。在引入DB-API...

    Python操作数据库及Python实现mysql数据库连接池源代码

    Python操作数据库及Python实现mysql数据库连接池源代码。python编程中可以使用MySQLdb进行数据库的连接及诸如查询/插入/更新等操作,但是每次连接mysql数据库请求时,都是独立的去请求访问,相当浪费资源,而且访问...

    python备份mysql数据库

    当谈到使用Python来备份MySQL数据库时,我们可以借助一些工具和库实现这一目标。在这个场景中,"python备份mysql数据库"的实践主要涉及到以下几个核心知识点: 1. Python语言:Python是一种高级编程语言,以其简洁...

    Python实现mysql数据库连接池.md

    Python实现mysql数据库连接池

    Python访问MySQL数据库

    Python访问MySQL数据库是一种常见的任务,尤其在数据处理和Web应用开发中。Python提供了多种库来实现这一功能,其中最常用的是`pymysql`和`mysql-connector-python`。本篇将详细介绍如何使用Python与MySQL数据库进行...

    Python连接Mysql数据库1

    Python 连接 Mysql 数据库 Python 连接 Mysql 数据库是 Python 语言连接 Mysql 数据库的方法。在连接 Mysql 数据库之前,需要安装 MySQLdb, MySQLdb 是用于 Python 链接 Mysql 数据库的接口。有两种安装方法:一是...

    python实现连接MySQL数据库

    通过python编写代码连接MySQL数据库,包括数据库和数据表的创建。

    python连接mysql插件

    在这个场景下,"python连接mysql插件"指的是Python中的一个名为`mysql-connector-python`的库,它允许Python程序连接并操作MySQL数据库。 `mysql-connector-python`是Oracle官方提供的Python驱动程序,完全兼容...

    python的Mysql数据库连接.docx

    本文将对`python的Mysql数据库连接.docx`中的知识点进行详细解读,并补充一些额外的重要内容。 #### 一、Python连接MySQL数据库的基本步骤 根据文档中的示例代码,我们可以看到通过Python连接MySQL数据库的基本...

    python连接mysql数据库测试案例

    python连接mysql数据库,简单的例子,需要先安装pythone3.0、pymysql模块、mysql数据库才能运行

    Python3 MySQL 数据库连接PyMySQL

    Python3中的PyMySQL是一个用于连接MySQL数据库的第三方库,它为Python程序员提供了类似于Python标准库DB-API(PEP 249)的接口。PyMySQL是纯Python编写的,因此在那些不支持其他MySQL连接器(如MySQLdb)的环境中,...

    python使用mysql数据库时需要安装的开源mysql连接工具,64位的

    创建一个简单的Python脚本,尝试连接到MySQL数据库: ```python import MySQLdb db = MySQLdb.connect(host="localhost", user="yourusername", passwd="yourpassword", db="yourdatabase") cursor = db.cursor...

    python操作mysql数据库.pdf

    如果数据库连接存在,我们可以使用 `execute()` 方法来为数据库创建表,例如创建表 EMPLOYEE: ``` # encoding: utf-8 #!/usr/bin/python import MySQLdb # 打开数据库连接 db = MySQLdb.connect("localhost",...

Global site tag (gtag.js) - Google Analytics