Python的Mysql操作

网上好多的帖子感觉比较老了,而且千篇一律。我到mysql看了一下官网上python驱动的操作,发现与大部分网站说的都不一样。

首先安装的驱动是:

pip install mysql-connector-python

上面是在ubuntu上的命令。

安装之后,开发的样例代码如下:

from __future__ import print_function

from decimal import Decimal
from datetime import datetime, date, timedelta

import mysql.connector

# Connect with the MySQL Server
cnx = mysql.connector.connect(user=‘scott‘, database=‘employees‘)

# Get two buffered cursors
curA = cnx.cursor(buffered=True)
curB = cnx.cursor(buffered=True)

# Query to get employees who joined in a period defined by two dates
query = (
  "SELECT s.emp_no, salary, from_date, to_date FROM employees AS e "
  "LEFT JOIN salaries AS s USING (emp_no) "
  "WHERE to_date = DATE(‘9999-01-01‘)"
  "AND e.hire_date BETWEEN DATE(%s) AND DATE(%s)")

# UPDATE and INSERT statements for the old and new salary
update_old_salary = (
  "UPDATE salaries SET to_date = %s "
  "WHERE emp_no = %s AND from_date = %s")
insert_new_salary = (
  "INSERT INTO salaries (emp_no, from_date, to_date, salary) "
  "VALUES (%s, %s, %s, %s)")

# Select the employees getting a raise
curA.execute(query, (date(2000, 1, 1), date(2000, 12, 31)))

# Iterate through the result of curA
for (emp_no, salary, from_date, to_date) in curA:

  # Update the old and insert the new salary
  new_salary = int(round(salary * Decimal(‘1.15‘)))
  curB.execute(update_old_salary, (tomorrow, emp_no, from_date))
  curB.execute(insert_new_salary,
               (emp_no, tomorrow, date(9999, 1, 1,), new_salary))

  # Commit the changes
  cnx.commit()

cnx.close()

原文地址:https://www.cnblogs.com/zhangqunshi/p/9113945.html

时间: 2024-10-12 13:33:42

Python的Mysql操作的相关文章

Python学习 Day17 Python对Mysql操作和使用ORM框架(SQLAlchemy)

Python对Mysql操作和使用ORM框架(SQLAlchemy) Mysql 常见操作 数据库操作 创建数据库 create database fuzjtest 删除数据库 drop database fuzjtest 查询数据库       show databases 切换数据库       use databas 123123 ###用户授权 创建用户          create user '用户名'@'IP地址' identified by '密码'; 删除用户        

python连接mysql操作(1)

python连接mysql操作(1) import pymysql import pymysql.cursors # 连接数据库 connect = pymysql.Connect( host='10.10.146.28', port=3306, user='admin_m', passwd='fcfmTbRw1tz2x5L5GvjJ', db='test', charset='utf8mb4' ) def create_table(): cursor = connect.cursor() #

python关于Mysql操作

一.安装mysql windows下,直接下载mysql安装文件,双击安装文件下一步进行操作即可: Linux下的安装也很简单,除了下载安装包进行安装外,一般的linux仓库中都会有mysql ,我们只需要通过一个命令就可以下载安装: Ubuntu.deepin sudo apt-get install mysql-server Sudo apt-get install  mysql-client centOS.redhat yum install mysql 二.安装MySQL-python

Python之MySQL操作及Paramiko模块操作

一.MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性. MySQL所使用的 SQL

python数据库(mysql)操作

一.软件环境 python环境默认安装了sqlite3,如果需要使用sqlite3我们直接可以在python代码模块的顶部使用import sqlite3来导入该模块.本篇文章我是记录了python操作mysql数据库,mysql数据库下载 由于我之前安装的是wampserver,默认安装了php.mysql和apache这3个环境,因此我没有在单独安装mysql数据库,只是下载了一个mysql管理工具Navicat for MySQL.在使用Navicat for MySQL连接本地mysql

[python] 连接MySQL操作

环境:Linux CentOS6.7,python 2.7.13 说明:连接MySQL,进行增删改查操作,并将执行的SQL和耗时记录到日志里 demo: #!/usr/bin/env python # -*- coding:utf-8 -*- import MySQLdb import logging import time ''' 设置日志输出路径和格式 ''' logging.basicConfig(level=logging.INFO,                     format

Python之MySql操作

1.安装驱动 输入命令:pip install MySQL-python 2.直接使用驱动 #coding=utf-8 import MySQLdb conn= MySQLdb.connect( host='127.0.0.1', port = 3306, user='root', passwd='root', db ='数据库名称', charset='utf8' ) cur = conn.cursor() aa=cur.execute("select * from 表名") pri

Python 连接 Mysql 操作异常

UserWarning: /home/toddler/.python-eggs is writable by group/others and vulnerable to attack when used with get_resource_filename. Consider a more secure location (set with .set_extraction_path or the PYTHON_EGG_CACHE environment variable). warnings.

python 的mysql 操作

参考文章 import pymysql import pandas from IPython.core.display import display db = pymysql.connect( host='localhost', port=3306, user='root', password='root', db='test', charset='utf8' ) cursor = db.cursor() sql = "select * from user" result = curs