Python和数据库交互

35 篇文章 0 订阅
3 篇文章 0 订阅

在Python中有很多需求都需要连接数据库来存储数据,接下来就一起来学习一下基础的Python 连接数据库语法吧!

1. 连接、关闭数据库

# 连接的函数
def getConnect():
    conn = pymysql.Connect(host='',
                           user='root',
                           password='root',
                           database='productBase',
                           charset='utf8')
    return conn

# 关闭的函数
def closeConnect(cursor,conn):
    if cursor:
        cursor.close()
        print('已关闭cursor')
    if conn:
        conn.close()
        print('已关闭conn')

2. 插入语句

# 插入数据insert
def insertData(sql):
    conn = getConnect() # 获取连接
    cursor = conn.cursor() # 创建游标
    cursor.execute(sql) # 把语句放入游标
    conn.commit() # 发送语句
    closeConnect(cursor,conn)  # 关闭连接
    count = cursor.rowcount # 返回条目数
    if count > 0:
        return True
    else:
        return False


# 插入!! 使用format来插入变量
sql = "insert into tb_user(name,balance,age) value({},{},{})"/
	.format(name,blance,age)

# 引用函数
if idus.insertData(sql) == True:
    print('插入成功')

3. 查询数据

def selectData(sql):
    conn = getConnect()
    cursor = conn.cursor()
    cursor.execute(sql)
    closeConnect(cursor,conn)

    return cursor.fetchall() # 返回值是一个元组套着一堆元组


#查询
sql = 'select * from tb_user'
aa = idus.selectData(sql)
#遍历元组
for a  in  aa:
     print(a)

4.修改数据

# 修改数据
def upDate(sql):
    conn = getConnect() # 连接
    cursor = conn.cursor()#游标
    cursor.execute(sql)  # 把语句放入游标
    conn.commit()  # 发送语句
    closeConnect(cursor, conn)  # 关闭连接
    count = cursor.rowcount  # 返回条目数
    if count > 0:
        return True
    else:
        return False

# 修改
sql = "UPDAtE tb_user set name = '修改', balance = {}, age = {} WHERE id = {}"/
.format (balance , age , id)


if idus.upDate(sql):
    print('修改成功')
else:
     print('修改失败,数值重复')

删除数据

# 删除数据
def deleteDate(sql):
    conn = getConnect()  # 连接
    cursor = conn.cursor()  # 游标
    cursor.execute(sql)  # 把语句放入游标
    conn.commit()  # 发送语句
    closeConnect(cursor, conn)  # 关闭连接
    count = cursor.rowcount  # 返回条目数
    if count > 0:
        return True,count
    else:
        return False,count


sql = "delete from tb_user where id = {}"。formate(2)
if idus.deleteDate(sql[0]):
    print('删除成功')
else:
    print('修改失败,没有数据')

注意,连接是必须的,需要选择数据库才能往进行数据库操作
注意,关闭数据库是必须得,否则会造成数据库崩溃(sql数据库有)
最多操作人数,超过人数sql服务会崩溃。
你要知道,游标不是必须的,只有在有进行数据的更改(增删改)的时候才有用。

Thank your Witch 我是墨码,喜欢的请三连!谢谢!!!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值