mysql-connector-python模块,简单使用
时间:2020-05-22
本文章向大家介绍mysql-connector-python模块,简单使用,主要包括mysql-connector-python模块,简单使用使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
#!/usr/bin/env python3 # -*- coding: utf-8 -*- #----------------------------------------------------------# # Date : xxxx-xx-xx # # Author : Created by zhouwanchun. # # Wechat : loveoracle11g # # Function: This scripts function is ... # # Version : 1.1 # #----------------------------------------------------------# ### 导出mysql-connector-python模块 import mysql.connector ### 连接MySQL数据库 conn = mysql.connector.connect( host='172.17.0.17', port=5730, user='zhouwanchun', password='zhouwanchun123', charset='utf8' ) ### 创建SQL命令通道 sql_cmd = conn.cursor() # 使用fetchall(),获取所有的查询结果集,返回值为一个list,每一个元素是一个tuple. sql1 = "show databases;" sql_cmd.execute(sql1) result = sql_cmd.fetchall() # print(result) print("----------------取出数据库库名----------------") for i in result: print(i[0]) # 使用fetchone()每次只取一条结果集,每调用一次之后,内部指针会指向下一条结果集 ### 取出每一个账号 sql3 = "select user,host from mysql.user;" sql_cmd.execute(sql3) result_1_row = sql_cmd.fetchone() # print(result_1_row) print("----------------取出数据库账号----------------") print("'" + result_1_row[0] + "'" + '@' + "'" + result_1_row[1] + "'") # 使用fetchmany(num)指定每次取出num条结果集 sql2 = "select * from app01.t1;" sql_cmd.execute(sql2) result_5_row = sql_cmd.fetchmany(5) print("----------------取出5条业务数据---------------") for i in result_5_row: print(i) # insert、update、delete操作 sql4 = "insert into app01.t1(c1,c2,c3) values(uuid(),@@hostname,@@port);" sql_cmd.execute(sql4) conn.commit() print(sql_cmd.rowcount, "数据插入成功") # 使用预处理格式(占位符格式) sql5 = "select * from app01.t1 where id=%s and c2=%s;" val = (1, 'db01') sql_cmd.execute(sql5, val) res = sql_cmd.fetchall() print(res) # 批量插入数据 sql6 = "insert into app01.t1(c1,c2,c3) values(%s, %s, %s);" val = [ (uuid(),@@hostname,@@port), (uuid(),@@hostname,@@port), (uuid(),@@hostname,@@port) ] sql_cmd.executemany(sql6, val) conn.commit() print(sql_cmd.rowcount, "数据插入成功")
原文地址:https://www.cnblogs.com/zhouwanchun/p/12938607.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Java基础之IO流(一)
- Java基础之IO流(二)
- 数据可视化|如何用wordcloud绘制词云图?
- Java日志记录最佳实践
- Java基础之IO流(三)
- 百万并发「零拷贝」技术系列之Linux实现
- 前缀和与差分 Krains 2020-07-28 16:05:15
- 1477. 找两个和为目标值且不重叠的子数组 Krains 2020-07-30 09:50:18 动态规划滑动窗口
- 114. 二叉树展开为链表 Krains 2020-08-02 08:59:00 树
- 1478. 安排邮筒 Krains 2020-07-30 14:51:32 动态规划DFS数学
- 435. 无重叠区间 Krains 2020-07-28 11:26:10 贪心
- 632. 最小区间 Krains 2020-08-01 09:51:18 单调队列双指针堆
- 【R语言】高维数据可视化| ggplot2中会“分身术”的facet_wrap()与facet_grid()姐妹花
- 百万并发「零拷贝」技术系列之Java实现
- 腾讯云LiteAV、IM SDK(iOS)