美文网首页
Python——MySql操作

Python——MySql操作

作者: _羊羽_ | 来源:发表于2018-08-05 23:55 被阅读777次

pymysql

pymysql 的GitHub地址:https://github.com/PyMySQL/PyMySQL

image.png
常见数据类
类型 字节大小 有符号范围(Signed) 无符号范围(Unsigned)
TINYINT 1 -128 ~ 127 0 ~ 255
SMALLINT 2 -32768 ~ 32767 0 ~ 65535
MEDIUMINT 3 -8388608 ~ 8388607 0 ~ 16777215
INT/INTEGER 4 -2147483648 ~2147483647 0 ~ 4294967295
BIGINT 8 -9223372036854775808 ~ 9223372036854775807 0 ~ 18446744073709551615

字符串

类型 字节大小 示例
CHAR 0-255 类型:char(3) 输入 'ab', 实际存储为'ab ', 输入'abcd' 实际存储为 'abc'
VARCHAR 0-255 类型:varchar(3) 输 'ab',实际存储为'ab', 输入'abcd',实际存储为'abc'
TEXT 0-65535 大文本

日期时间类型

类型 字节大小 示例
DATE 4 '2020-01-01'
TIME 3 '12:29:59'
DATETIME 8 '2020-01-01 12:29:59'
YEAR 1 '2017'
TIMESTAMP 4 '1970-01-01 00:00:01' UTC ~ '2038-01-01 00:00:01' UTC

安装方式

 python3 -m pip install PyMySQL

Connection

创建对象:调用connect()方法用于建立与数据库的连接

conn=connect(参数列表)

参数host:连接的mysql主机,如果本机是'localhost'
参数port:连接的mysql主机的端口,默认是3306
参数database:数据库的名称
参数user:连接的用户名
参数password:连接的密码
参数charset:通信采用的编码方式,推荐使用utf8
对象的方法
close()关闭连接
commit()提交
cursor()返回Cursor对象,用于执行sql语句并获得结果

Cursor游标

用于执行sql语句,使用频度最高的语句为select、insert、update、delete
获取Cursor对象:调用Connection对象的cursor()方法

c=conn.cursor()

对象的方法
close()关闭
execute(operation [, parameters ])执行语句,返回受影响的行数,主要用于执行insert、update、delete语句,也可以执行create、alter、drop等语句
fetchone()执行查询语句时,获取查询结果集的第一个行数据,返回一个元组
fetchall()执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回

连接数据库

import pymysql

conn = pymysql.connect(host='localhost', user='baxiang', password='123456', port=3306)
cursor = conn.cursor()
cursor.execute('SELECT VERSION()')
data = cursor.fetchone()
print(''.join(data))
cursor.execute('SHOW DATABASES')
data = cursor.fetchone()
print(''.join(data))
conn.close()

创建数据库

import pymysql

conn = pymysql.connect(host='localhost', user='baxiang', password='123456', port=3306)
cursor = conn.cursor()
cursor.execute('CREATE DATABASE py_test DEFAULT CHARACTER  SET utf8')
cursor.execute('SHOW DATABASES')
dbList = cursor.fetchall()
for db in dbList:
    print('db name:'+''.join(db))
conn.close()

fetchall获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回

创建表

import pymysql

conn = pymysql.connect(host='localhost', user='baxiang', password='123456', port=3306, db='py_test')
cursor = conn.cursor()
sql = '''
CREATE TABLE IF NOT EXISTS exam(
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`score` smallint(5) unsigned NOT NULL,
PRIMARY KEY (`id`)
)COMMENT='学生'
'''
cursor.execute(sql)
cursor.close()
conn.close()

插入数据

import pymysql

conn = pymysql.connect(host='localhost', user='baxiang', password='123456', port=3306, db='py_test')
cursor = conn.cursor()
try:
    cursor.execute("INSERT INTO exam(id,name,score) VALUES (%s,%s,%s)", (2009100981, 'ba', 95))
    conn.commit()
except:
    conn.rollback()

cursor.close()
conn.close()

查询数据

import pymysql

conn = pymysql.connect(host='localhost', user='baxiang', password='123456', port=3306, db='py_test')
cursor = conn.cursor()
try:
    cursor.execute("SELECT * FROM exam WHERE score >= 60")
    dataList = cursor.fetchall()
    for data in dataList:
        print(data)
except Exception as e:
    print(e)

cursor.close()
conn.close()

相关文章

  • 使用 pymysql 进行增删查改

    参考文章 用python实现接口测试(四、操作MySQL) python3使用pymysql操作mysql 安装 ...

  • mysql+python

    安装MySQL-python 要想使python可以操作mysql 就需要MySQL-python驱动,它是pyt...

  • pycharm连接mysql

    python操作MySQL(简单流程)

  • 05-Mysql数据库03

    mysql与python交互 拆表 python中操作mysql 安装pymysqlsudo pip instal...

  • 搜企网爬虫作业

    作业要求 (1)csv文件数据写入(2)mysql 操作,python mysql操作 这个需要安装mysql以及...

  • (十四) 学习笔记: 使用Python对Mysql Mongo

    一. Python对MySQL的操作 (1) 安装模块pip install pymysql(2) 操作mysql...

  • python作业-20170601

    作业:(1)csv文件数据写入(2)mysql 操作,python mysql操作 这个需要安装mysql以及p...

  • MySQL&python交互

    MySQL&python交互 一、Python操作MySQL步骤(原始的执行SQL语句) 引入pymysql模块 ...

  • Python3-mysql

    此文章记录一下python对mysql的一些操作方式、方法。 *python如何连接mysql ? python ...

  • Python操作MySQL

    Python操作MySQL 一. python操作数据库介绍 Python 标准数据库接口为 Python DB-...

网友评论

      本文标题:Python——MySql操作

      本文链接:https://www.haomeiwen.com/subject/gwczpftx.html