python对mysql进行简单操作
python 连接MySQL数据库,进行简单操作
一、连接MySQL数据库,关闭连接
import pymysql
db = pymysql.connect(host="xxx.xxx.x.x", # 数据库ip地址
port=1233, # 端口号
user="root", # 用户名
passwd="*****", # 密码
db="数据库名称", # 数据库名称
charset="utf-8") # 编码 db.close() # 关闭MySQL连接
二、进行查询操作
import pymysql db = pymysql.connect(host="xxx.xxx.x.x", # 数据库ip地址
port=1233, # 端口号
user="root", # 用户名
passwd="*****", # 密码
db="数据库名称", # 数据库名称
charset="utf-8") # 编码 cur = db.cursor() # 创建一个游标对象
cur.execute("sql查询语句") # 执行MySQL语句
data = cur.fetchall() # 获取查询结果
print(data)
cur.close() # 关闭游标
三、进行修改操作
import pymysql db = pymysql.connect(host="xxx.xxx.x.x", # 数据库ip地址
port=1233, # 端口号
user="root", # 用户名
passwd="*****", # 密码
db="数据库名称", # 数据库名称
charset="utf-8") # 编码 cur = db.cursor() # 创建一个游标对象
cur.execute("sql修改语句") # 执行MySQL修改语句
db.commit() # 一定要提交,不然数据库不会修改成功
cur.close() # 关闭游标
对MySQL进行查询、修改、将对应的值提取出来
# coding:utf-8
import pymysql mysql_info = {"host": "xx.xxx.xxx.x",
"port": 1234,
"user": "root",
"passwd": "root",
"db": "xxxx",
"charset": "utf8"} class TestMySQL(object):
"""连接MySQL,对MySQL进行增删改查操作"""
def __init__(self):
"""连接池方式"""
db_info = mysql_info
self.db = TestMySQL.__get_concent(db_info) def __get_concent(db_info):
"""从连接池中取出连接"""
try:
# 打开数据库链接
db = pymysql.connect(host=mysql_info["host"],
port=mysql_info["port"],
user=mysql_info["user"],
passwd=mysql_info["passwd"],
db=mysql_info["db"],
charset=mysql_info["charset"])
return db
except Exception as a:
print("链接数据库异常:%s" % a) def select_mysql(self, sql):
"""查询MySQL数据"""
# 使用 cursor() 方法创建一个游标对象 cur
cur = self.db.cursor()
try:
# 使用 execute() 方法执行 SQL 查询
cur.execute(sql)
except Exception as a:
print("执行MySQL语句出现异常:%s" % a)
else:
# 使用 fetchall() 方法获取查询结果
data = cur.fetchall()
cur.close() # 关闭游标
return data def modify_mysql(self, sql):
"""修改MySQL数据,可以进行插入、更新、删除操作"""
# 使用 cursor() 方法创建一个游标对象 cur
cur = self.db.cursor()
try:
cur.execute(sql)
except Exception as a:
print("执行MySQL语句出现异常:%s" % a)
else:
# 一定要提交,否则不生效
self.db.commit()
cur.close() def getstring_mysql(self, sql):
"""从查询结果取出某个对应字段的值"""
data = self.select_mysql(sql)
if data is not None:
for i in data:
for j in i:
return j def close_mysql(self):
"""断开MySQL连接"""
try:
self.db.close()
except Exception as a:
print("关闭数据库异常:%s" % a) if __name__ == '__main__':
insert_sql = "insert student (id, name, age, sex) VALUES (7, '珠儿a', 20, 1)"
update_sql = "update student set name='王语嫣', sex=1 where id = 7"
delete_sql = "delete from student where id = 7"
select_sql = "select * from student"
getdata_sql = "select name from student where id=1" test_mysql = TestMySQL()
test_mysql.modify_mysql(insert_sql)
insert = test_mysql.select_mysql(select_sql)
print(insert) test_mysql.modify_mysql(update_sql)
update = test_mysql.select_mysql(select_sql)
print(update) test_mysql.modify_mysql(delete_sql)
delete = test_mysql.select_mysql(select_sql)
print(delete) getdata = test_mysql.getstring_mysql(getdata_sql)
print(getdata)
python对mysql进行简单操作的更多相关文章
- python操作三大主流数据库(2)python操作mysql②python对mysql进行简单的增删改查
python操作mysql②python对mysql进行简单的增删改查 1.设计mysql的数据库和表 id:新闻的唯一标示 title:新闻的标题 content:新闻的内容 created_at: ...
- Linux下MySQL的简单操作
Linux下MySQL的简单操作 更改mysql数据库root的密码 首次进入数据库是不用密码的: [root@localhost ~]# /usr/local/mysql/bin/mysql -ur ...
- MySQL基本简单操作03
MySQL基本简单操作 现在我创建了一个数据表,表的内容如下: mysql> select * from gubeiqing_table; +----------+-----+ | name | ...
- MySQL基本简单操作02
MySQL基本简单操作 先进入Mysql容器. [root@promote ~]# docker exec -it mysql /bin/bash root@30d60b852cf5:/# mysql ...
- MySQL基本简单操作01
MySQL基本简单操作 学会了安装Docker,那么就将它利用起来.(/滑稽脸) 之前想学习Mysql(Windows下配置真麻烦),学会了Docker就方便了,直接使用Docker创建一个Mysql ...
- Ubuntu 安装mysql和简单操作
http://www.cnblogs.com/zhuyp1015/p/3561470.html ubuntu上安装mysql非常简单只需要几条命令就可以完成. 1. sudo apt-get inst ...
- python连接mysql数据库简单例子
今天用pyhton2连接本地的mysql数据库,总的来说比较简单,但还是遇到一些小问题 代码如下: # -*- coding: utf-8 -*- import os import MySQLdb i ...
- Ubuntu下安装MySQL及简单操作
Ubuntu上安装MySQL非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client ...
- Python在mysql中进行操作是十分容易和简洁的
首先声明一下,我用的是Windows系统! 1.在Python中对mysql数据库进行操作首先要导入pymysql模块,默认情况下,Python中是没有安装这个模块的, 可以在Windows的命令行中 ...
随机推荐
- localStore的storage事件
两个浏览器窗口间通信 两个浏览器窗口间通信 补充一下,这里的通讯指遵守同源策略情况下. 为了吸引读者的兴趣,先把demo放到前面:下面有几个我自己写的演示多页面通讯的demo, 为了正常运行,请用 ...
- 关于python的创立模块和导入
首先,模块就是所有的.py文件,而模块的作用便是简化代码,使其看得简易. 例如这就是模块: 'a test'这是注释,并没有什么作用. 而创立模块的第一步:建立一个.py文件例如:这是上方这串代码的模 ...
- JavaScript属性(第三天)
js语法非常灵活,这致使他非常好用,也造成它比较难掌握的地方: js中的值类型与引用类型在这里不做过多介绍,可以参照其他语言. js是可以动态添加属性的: var person={}; person. ...
- spring boot 的参数配置。
https://blog.csdn.net/baidu_24237655/article/details/72772402
- Go - WaitGroup
package main import ( "fmt" "sync" ) //WaitGroup用于等待一组线程的结束.父线程调用Add方法来设定应等待的线程的 ...
- R并行计算
# 参考文献: https://cosx.org/2016/09/r-and-parallel-computinghttps://blog.csdn.net/sinat_26917383/articl ...
- 20175202 《Java程序设计》第八周学习总结
20175202 2018-2019-2 <Java程序设计>第八周学习总结 教材知识点总结 1.泛型: 主要目的是可以建立具有类型安全的集合框架,如链表.散列映射等数据结构. 泛型类的声 ...
- DataFrame对行列的基本操作实战
1.pandas对行列的基本操作命令: import numpy as np import pandas as pd from pandas import Sereis, DataFrame ser ...
- 数据库if判断语句
THEN '青年' ELSE '未成年' END) as age_text from user 更多写法参考:http://www.cnblogs.com/martinzhang/p/3220595. ...
- AR图像识别 AR识别图像 AR摄像头识别 外包开发 AR识别应用开发就找北京动点软件
当绝大多数手机厂商还在追求后置双摄拍照的时候,已经有人开始潜心研究AR手机了.刚刚结束的美国消费电子展上,华硕发布了全新的ZenFone AR手机,配备5.7英寸2K屏.骁龙821处理器.8GB内存, ...