python-PyMySQ mysql数据库的操作和使用

这篇博客介绍了如何使用Python的pymysql库连接MySQL数据库,包括创建和删除数据库的步骤,以及创建和管理表的操作。示例中展示了如何创建、显示和删除数据库,以及创建表、展示表结构和执行相关数据库操作。此外,还总结了connect()函数返回的连接对象的方法,如关闭连接、提交事务、回滚事务和获取游标对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用库 :import pymsql
安装:pip install pymsql
示例:

数据库创建和删除

pymysql连接数据库使用的是 pymsql.connect() 函数,其常用参数如下:

pymysql.connect():连接数据库

import pymysql

db = pymysql.connect(
    host="localhost", 
    port=3306,
    user='root',    #在这里输入用户名
    password='',     #在这里输入密码
    charset='utf8mb4' 
    )

db.cursor():创建游标对象

cursor = db.cursor() #创建游标对象

创建数据库justtest

try:

    sql = 'show databases' 
    cursor.execute(sql)
    print('未创建数据库前:',cursor.fetchall()) #获取创建数据库前全部数据库
    dbname = 'justtest'
    sql = 'create database if not exists %s'%(dbname) #创建数据库
    cursor.execute(sql)
    sql = 'show databases' 
    cursor.execute(sql)
    print('创建新的数据库后:',cursor.fetchall()) #获取创建数据库后全部数据库
except Exception as e:
    print(e)
    db.rollback()  #回滚事务
finally:
    cursor.close() 
    db.close()  #关闭数据库连接

删除数据库

sql = 'drop database if exists %s'%(dbname) #删除数据库
cursor.execute(sql)
sql = 'show databases' 
cursor.execute(sql)
print('删除新的数据库后:',cursor.fetchall()) #获取删除数据库后全部数据库

创建数据库”常用模板“
CREATE DATABASE IF NOT EXISTS dbname DEFAULT CHARSET utf8;

创建和管理表

数据库test12340连接

import pymysql

db = pymysql.connect(
    host="nyanya.cc",   # mysql服务器IP地址
    port=3306,  # 服务所在的端口地址
    user='test12340',    #在这里输入用户名
    database='test12340',  #在这里数据库名称
    password='',     #在这里输入密码
    charset='utf8'  # 常用的utf8 utf8mb4
    ) #连接数据库
cursor = db.cursor() #创建游标对象

创建表

try:
    cursor = db.cursor()  # 创建游标对象
    tableName = 'user'
    sql = 'create table  %s (id varchar(20) not null, name varchar(20) not null, primary key(id))'%(tableName)
    cursor.execute(sql)     #执行sql语句,创建表
    sql = 'show tables'
    cursor.execute(sql)
    print('显示创建的表:',cursor.fetchall())  #显示创建的表
    sql = 'desc %s'%(tableName)
    cursor.execute(sql)
    print('显示表结构:',cursor.fetchall())  #显示表结构
except Exception as e:
    print(e)
    db.rollback()  #回滚事务

创建成功
在这里插入图片描述

connect() 函数返回的连接对象的方法总结:

方法
close()关闭数据库的连接
commit()提交事务
rollback()回滚事务
cursor()获取游标对象,操作数据库,如执行DML操作,调用存储过程等

cursor():游标对象的方法

方法名说明
callproc(procname,[,parameters])调用存储过程,需要数据库支持
close()关闭当前游标
execute(operation,[,parameters])执行数据库操作,sql语句或者数据库命令
executemany(operation, seq_of_params)用于批量操作
fetchone()获取查询结果集合中的下一条记录
fetchmany(size)获取指定数量的记录
fetchall()获取查询结果集合所有记录
nextset()跳至下一个可用的数据集
arraysize指定使用fetchmany()获取的行数,默认为1
setinputsizes(size)设置调用execute*()方法时分配的内存区域大小
setoutputsizes(size)设置列缓冲区大小,对大数据列尤其有用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值