Python交互数据库(Mysql | Mongodb | Redis)

简介: 数据库MysqlMysqlMySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品MySQL 软件采用了双授权政策...
数据库

Mysql

Mysql

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品

MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库.

创建数据库

create database zhaozhao charset=utf8;

use zhaozhao;


create table zhaozhao_comic(

    id int unsigned primary key auto_increment not null,
    name varchar(100),
    zone varchar(100) 


);

insert into zhaozhao_comic values
    (0, "旋涡鸣人", "木叶村"),
    (0, "苏苏", "涂山"),
    (0, "曹焱兵", "镇魂街"),
    (0, "坂田银时", "万事屋");


操作数据库

from pymysql import *

def main():
    # 创建Connection连接
    conn = connect(host='172.16.221.143',port=3306,database='zhaozhao',user='root',password='root',charset='utf8')
    
    # 获得Cursor对象
    cs1 = conn.cursor()
    # 执行insert语句,并返回受影响的行数:添加一条数据

    # 增加
    count = cs1.execute('insert into zhaozhao_comic(name, zone) values("我爱罗", "风之国"),("奇拉比", "雷之国")')
    # 打印受影响的行
    print ("共有",count, "行受影响!")
    count = cs1.execute('insert into zhaozhao_comic values(0, "奥特曼", "M78星云")')
    # 打印受影响的行
    print ("共有",count, "行受影响!")

    # 执行
    conn.commit()

    # 删除
    count = cs1.execute('delete from zhaozhao_comic where name = "奇拉比" ')
    # 打印受影响的行
    print ("共有",count, "行受影响!")
    # 执行
    conn.commit()

    # 更改
    count = cs1.execute('update zhaozhao_comic set name="赛罗奥特曼" where name="奥特曼"')
    # 打印受影响的行
    print ("共有",count, "行受影响!")
    # 执行
    conn.commit()
    
    # 查询
    count = cs1.execute('select * from zhaozhao_comic where id < 5')
    # 打印受影响的行
    print ("共查到",count, "行数据!")

    for i in range(count):

        result = cs1.fetchone()
        print ("第%d次查到的数据为%s:"%(i+1, result))

    # 关闭Cursor对象
    cs1.close()
    # 关闭Connection对象
    conn.close()

if __name__ == '__main__':
    main()

Mongdb

Mongdb

MongoDB 是一个基于分布式文件存储的NoSQL数据库.
MongoDB由C++语言编写,运行稳定,性能高.
MongoDB旨在为WEB应用提供可扩展的高性能数据存储解决方案.

from pymongo import *

def main():
    
    # 创建连接对象
    client=MongoClient(host='localhost',port=27017)

    # 获得数据库,此处使用python数据库
    db=client.python

    # 增加
    
    db.stu.insert_one({'name':'佐助','gender':'男'})
    db.stu.insert_one({'name':'春野樱','gender':'女'})
    db.stu.insert_one({'name':'蒙奇 D 路飞','gender':'男'})
    db.stu.insert_one({'name':'索隆','gender':'男'})
    db.stu.insert_one({'name':'娜美','gender':'女'})


    # 查询

    #查询一条文档
    result=db.stu.find_one({'name':'索隆'})
    print (result)

    #查询多条文档
    result=db.stu.find({'gender':'男'})

    for item in result:
        print ('%s--%s'%(item['name'],item['gender']))


    # 修改

    #更新满足条件的第一条文档
    db.stu.update_one({'name':'佐助'},{'$set':{'name':'宇智波佐助'}})

    #更新满足条件的所有文档
    db.stu.update_many({'gender':"男"},{'$set':{'gender':'boy'}})


    # 删除
    # 删除满足条件的第一条文档
    db.stu.delete_one({'gender':'男'})

    #删除满足条件的所有文档
    db.stu.delete_many({'gender':'女'})


if __name__=='__main__':
    main()


redis

Redis

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持.
Redis是一个开源(BSD许可)的、内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件.

from redis import *

def main():

    #创建StrictRedis对象,与redis服务器建立连接
    sr=StrictRedis()

    # 添加

    #添加键py1,值为gj
    result=sr.set('name','zhaozhao')
    #输出响应结果,如果添加成功则返回True,否则返回False
    print ("添加结果:",result)

    # 查询

    #获取键py1的值
    result = sr.get('name')
    #输出键的值,如果键不存在则返回None
    print ("获取的值为:",result)


    # 修改

    #设置键py1的值,如果键已经存在则进行修改,如果键不存在则进行添加
    result = sr.set('name','zhaozhaolee')
    #输出响应结果,如果操作成功则返回True,否则返回False
    print (result)

    # 删除

    #设置键py1的值,如果键已经存在则进行修改,如果键不存在则进行添加
    result = sr.delete('name')
    #输出响应结果,如果删除成功则返回受影响的键数,否则则返回0
    print (result)



if __name__=="__main__":
    main()

目录
相关文章
|
供应链 新能源 调度
微电网调度(风、光、储能、电网交互)(Matlab&Python代码实现)
微电网调度(风、光、储能、电网交互)(Matlab&Python代码实现)
274 0
|
11月前
|
关系型数据库 MySQL PHP
PHP和Mysql前后端交互效果实现
本文介绍了使用PHP连接MySQL数据库的基本函数及其实现案例。内容涵盖数据库连接、选择数据库、执行查询、获取结果等常用操作,并通过用户登录和修改密码的功能实例,展示了PHP与MySQL的交互过程及代码实现。
538 0
PHP和Mysql前后端交互效果实现
|
数据采集 存储 NoSQL
分布式爬虫去重:Python + Redis实现高效URL去重
分布式爬虫去重:Python + Redis实现高效URL去重
|
NoSQL 关系型数据库 MongoDB
接口管理工具深度对比:Apipost与Apifox在Redis/MongoDB支持上的关键差异
近期在团队工具选型时,系统对比了Apifox和Apipost两款接口管理工具,我们的体会是:Apipost适合需要同时管理多种数据库的中大型项目,特别是涉及Redis/MongoDB等非关系型数据库的场景,Apifox仅建议在纯关系型数据库架构且预算有限的小型项目中短期使用。
577 3
|
存储 安全 搜索推荐
课时15:Python的交互模式
今天给大家带来的分享是 Python 的交互模式以及计算机对 Python 的开发,分为以下三个部分。 1.Python的介绍 2.Python的结构 3.保存代码
397 2
|
SQL 关系型数据库 MySQL
PHP与MySQL的高效交互:从基础到实践####
本文深入探讨了PHP与MySQL数据库之间的高效交互技术,涵盖了从基础连接到高级查询优化的全过程。不同于传统的摘要概述,这里我们直接以一段精简代码示例作为引子,展示如何在PHP中实现与MySQL的快速连接与简单查询,随后文章将围绕这一核心,逐步展开详细讲解,旨在为读者提供一个从入门到精通的实战指南。 ```php <?php // 数据库配置信息 $servername = "localhost"; $username = "root"; $password = "password"; $dbname = "test_db"; // 创建连接 $conn = new mysqli($se
510 31
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
1486 15
|
存储 NoSQL MongoDB
Redis在中国火爆,为何MongoDB更受欢迎国外?
本文介绍了Redis和MongoDB的基本概念及其在GitHub Star、DB-Engines Ranking和Google Trends中的数据对比。Redis是一个基于内存的键值对存储数据库,适合快速读写场景;MongoDB则是面向文档的数据库,支持大规模数据存储和复杂查询。全球范围内,MongoDB的搜索热度高于Redis,但在中国市场,Redis更受欢迎,因其高性能和低延迟特性满足了中国互联网公司对高并发的需求。总结部分分析了两者的特点及适用场景,并结合中美两国的行业背景解释了其受欢迎程度的不同原因。
614 1
|
SQL 关系型数据库 MySQL
Python中使用MySQL模糊查询的方法
本文介绍了两种使用Python进行MySQL模糊查询的方法:一是使用`pymysql`库,二是使用`mysql-connector-python`库。通过这两种方法,可以连接MySQL数据库并执行模糊查询。具体步骤包括安装库、配置数据库连接参数、编写SQL查询语句以及处理查询结果。文中详细展示了代码示例,并提供了注意事项,如替换数据库连接信息、正确使用通配符和关闭数据库连接等。确保在实际应用中注意SQL注入风险,使用参数化查询以保障安全性。
|
前端开发 API 开发者
Python Web开发者必看!AJAX、Fetch API实战技巧,让前后端交互如丝般顺滑!
在Web开发中,前后端的高效交互是提升用户体验的关键。本文通过一个基于Flask框架的博客系统实战案例,详细介绍了如何使用AJAX和Fetch API实现不刷新页面查看评论的功能。从后端路由设置到前端请求处理,全面展示了这两种技术的应用技巧,帮助Python Web开发者提升项目质量和开发效率。
467 1

推荐镜像

更多