Python操作mysql(增删改查)

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:
#!/usr/bin/env python
#coding:utf-8

import MySQLdb
try:
    #连接mysql的方法:connect('ip','user','password','dbname')    
    #conn=MySQLdb.connect(host='localhost',user='root',passwd='123456',db='test')
    conn =MySQLdb.connect('127.0.0.1','root','123456',charset = 'gb2312')
    conn.select_db('python')
    cur=conn.cursor()
    sql1 = 'drop database python' #删除数据库 
    sql2 = 'create database if not exists python' #若不存在,则创建数据库
    sql3 = 'create database python'
    sql4 = 'create table module(m_id int not null,m_name VARCHAR(25),m_size int)'#创建表
    sql5 = 'create table if not exists demo(d_id int not null,d_name varchar(25),m_size int default 0)'
    values=[]
    for i in range(1): 
        values.append((i,'mysql',i+1)) 
    sql6 = 'insert into module values(%s,%s,%s)'
    #cur.executemany(sql6,values)   #批量插入
    values = [1,'MySQLdb',5]
    sql6 = "insert into module VALUES('%d','%s','%d')"%(2,'MySQLdb',7) #插入
    #sql6 = "insert into module(m_id,m_name,m_size) VALUES('%d','%s','%d')"%(2,'MySQLdb',7)
    #sql6 = "insert into module(m_id,m_name,m_size) VALUES('%d','%s','%d')"%(values[0],values[1],values[2])
    sql7 = "update module set m_name='MySql' where m_id=0 and m_size=0" #修改
    sql8 = "delete from module where m_id=1 and m_size=0" #删除
    sql9 = "select * from module where m_id=1"
    cur.execute(sql9)
    count = cur.execute(sql9)  #查询结果数量
    print u'查询结果数量:',count
    result = cur.fetchone() 
    print u'单条查询结果:',result
    result = cur.fetchmany(2)
    print u'多条查询结果:',result
    result = cur.fetchall()
    print u'所有不同的查询结果:',result
    for data in result:
        print data
    conn.commit()
    cur.close()
    conn.close()
except MySQLdb.Error,e:
    print "Mysql Error %d: %s" % (e.args[0], e.args[1])
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
20天前
|
缓存 NoSQL 关系型数据库
在Python Web开发过程中:数据库与缓存,MySQL和NoSQL数据库的主要差异是什么?
MySQL是关系型DB,依赖预定义的表格结构,适合结构化数据和复杂查询,但扩展性有限。NoSQL提供灵活的非结构化数据存储(如JSON),无统一查询语言,但能横向扩展,适用于大规模、高并发场景。选择取决于应用需求和扩展策略。
110 1
|
27天前
|
数据格式 Python
如何使用Python的Pandas库进行数据透视图(melt/cast)操作?
Pandas的`melt()`和`pivot()`函数用于数据透视。基本步骤:导入pandas,创建DataFrame,然后使用这两个函数转换数据格式。示例代码展示了如何通过`melt()`转为长格式,再用`pivot()`恢复为宽格式。输入数据是包含'Name'和'Age'列的DataFrame,最终结果经过转换后呈现出不同的布局。
39 6
|
29天前
|
XML 关系型数据库 MySQL
python将word(doc或docx)的内容导入mysql数据库
用python先把doc文件转换成docx文件(这一步也可以不要后续会说明),然后读取docx的文件并另存为htm格式的文件(上一步可以直接把doc文件另存为htm),python根据bs4获取p标签里的内容,如果段落中有图片则保存图片。(图片在word文档中的位置可以很好的还原到生成的数据库内容) 我见网上有把docx压缩后解压获取图片的,然后根据在根据xml来读取图片的位置,我觉得比较繁琐。用docx模块读取段落的时候还需要是不是判断段落中有分页等,然而转成htm之后就不用判断那么多直接判断段落里的样式或者图片等就可以了。
21 1
|
30天前
|
索引 Python
如何使用Python的Pandas库进行数据透视表(pivot table)操作?
如何使用Python的Pandas库进行数据透视表(pivot table)操作?
16 0
|
1月前
|
Unix Shell Linux
赞!优雅的Python多环境管理神器!易上手易操作!
赞!优雅的Python多环境管理神器!易上手易操作!
|
16天前
|
存储 SQL 关系型数据库
【MySQL】4. 表的操作
【MySQL】4. 表的操作
19 0
|
29天前
|
SQL 关系型数据库 MySQL
|
11天前
|
人工智能 机器人 C++
【C++/Python】Windows用Swig实现C++调用Python(史上最简单详细,80岁看了都会操作)
【C++/Python】Windows用Swig实现C++调用Python(史上最简单详细,80岁看了都会操作)
|
15天前
|
缓存 关系型数据库 MySQL
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
MySQL查询优化:提速查询效率的13大秘籍(合理使用索引合并、优化配置参数、使用分区优化性能、避免不必要的排序和group by操作)(下)
|
29天前
|
SQL 关系型数据库 MySQL
python在mysql中插入或者更新null空值
这段代码是Python操作MySQL数据库的示例。它执行SQL查询从表`a_kuakao_school`中选取`id`,`university_id`和`grade`,当`university_id`大于0时按升序排列。然后遍历结果,根据`row[4]`的值决定`grade`是否为`NULL`。若不为空,`grade`被格式化为字符串;否则,设为`NULL`。接着构造UPDATE语句更新`university`表中对应`id`的`grade`值,并提交事务。重要的是,字符串`NULL`不应加引号,否则更新会失败。
19 2