python管理mysql

1. 方法一
pip3 config set global.index-url
https://pypi.tuna.tsinghua.edu.cn/simple
yum -y install sqlalchemy
pip3 install pandas
import pandas as pd
from sqlalchemy import create_engine
class Python_Mysql ( object ):
def init ( self ):
print ( "test" )
def getEngine ( seft ):
host = input ( "sign mysql
server host:" )
username = input ( "sign mysql
username:" )
password = input ( "sign mysql
password:" )
databasename = input ( "sign
database name:" )
port = input ( "sign mysql
port:" )
engine = create_engine ( f"mysql+pymysql:// { use
rname } : { password } @ { host } :
{ port } / { databasename } " )
return engine
def querySql ( self , conn ):
sql = input ( "sign your sql:" )
return
pd . read_sql ( sql = sql , con = conn )
if name == "main" :
demo = Python_Mysql ()
#sql=input("sign sql:")

sql="select * from user"

rs = demo . querySql ( demo . getEngine ())
print ( rs )
2. 方法二

  1. 设置清华镜像站(从国内下载安装包,提高下载和安
    装速度)
  2. 安装 pandas 数据分析工具 (pandas 是知名的数据分析
    工具, pandas 有完整的读取数据的工具,以及
    DateFrame 数据框架,用于保存从数据库中读取的数
    据 )
  3. 安装 pymysql 连接器( oracle 为开发者提供的 python
    管理 mysql 的工具,通过这个工具,就恶意在不替原
    有代码的情况下,应对数据库软件的升级)
    pip3 config set global.index-url
    https://pypi.tuna.tsinghua.edu.cn/simple
    yum -y install pandas
    yum -y install pymysql
    >>> import pandas as pd
    >>> import pymysql
    >>> conn = pymysql . connect (
    ... host = '10.1.1.100' ,
    ... user = 'zhangmin' ,
    ... password = 'zhangmin' ,
    ... database = 'test' ,
    ... port = 3306
    ... )
    >>> conn
    < pymysql . connections . Connection object at
    0x7f9e24ba2c88 >
    >>> cursor = conn . cursor ()
    >>> cursor
    < pymysql . cursors . Cursor object at
    0x7f9e24ba2668 >
    >>> sql = "select * from user"
    >>> cursor . excute ( sql )
    Traceback ( most recent call last ):
    File "<stdin>" , line 1 , in < module > AttributeError : 'Cursor' object has no
    attribute 'excute'
    >>> cursor . execute ( sql )
    3
    >>> cursor . description
    (( 'id' , 3 , None , 11 , 11 , 0 , False ),
    ( 'username' , 253 , None , 180 , 180 , 0 , False ),
    ( 'password' , 253 , None , 180 , 180 , 0 , False ))
    >>> desc = cursor . description
    >>> res
    3
    >>> res = cursor . fetchall ()
    >>> res
    (( 1 , 'aaa' , '123' ), ( 8 , 'baba' , 'pipi' ),
    ( 20 , 'aaaaaaaa' , 'bbbbbbbb' ))
    >>> desc
    (( 'id' , 3 , None , 11 , 11 , 0 , False ),
    ( 'username' , 253 , None , 180 , 180 , 0 , False ),
    ( 'password' , 253 , None , 180 , 180 , 0 , False ))
    >>> [ item [ 0 ] for item in desc ]

'id' , 'username' , 'password'

>>> col = [ item [ 0 ] for item in desc ]
>>> df = pd . DataFrame ( res , columns = col )
>>> df
id username password
0 1 aaa 123
1 8 baba pipi
2 20 aaaaaaaa bbbbbbbb 总结

  1. 和 shell 脚本一样 python 文件也可以称为 py 脚本,也是
    将 pyhton 指令做一个集合
  2. 为了脚本更加的智能化和自动化,添加选择语句(智
    能)循环语句(自动化)
  3. 同时为了开发效率,可读性,做了方法,类,模块
相关推荐
敲上瘾1 小时前
MySQL数据类型
数据库·c++·mysql·数据库开发·数据库架构
未名编程1 小时前
【Flask开发踩坑实录】pip 安装报错:“No matching distribution found” 的根本原因及解决方案!
python·flask·pip
oliveira-time2 小时前
Java 1.8(也称为Java 8)
java·开发语言
q567315232 小时前
Node.js数据抓取技术实战示例
爬虫·python·scrapy·node.js
野犬寒鸦5 小时前
MySQL索引使用规则详解:从设计到优化的完整指南
java·数据库·后端·sql·mysql
FreakStudio6 小时前
一文速通Python并行计算:10 Python多进程编程-进程之间的数据共享-基于共享内存和数据管理器
python·嵌入式·多线程·多进程·线程同步
钰爱&6 小时前
【Linux】POSIX 线程信号量与互斥锁▲
java·开发语言·jvm
yt948326 小时前
Matlab实现绘制任意自由曲线
开发语言·matlab
黑匣子~7 小时前
java集成telegram机器人
java·python·机器人·telegram
A尘埃8 小时前
K8S有状态服务部署(MySQL、Redis、ES、RabbitMQ、Nacos、ZipKin、Sentinel)
redis·mysql·kubernetes