• Python MySQL数据库操作


      Python2 中使用模块 MySQLdb 模块处理数据库的操作,在Python3中使用 PyMySQL

    Python2 - 数据库的操作

    1. MySQLdb 安装

    yum -y install MySQL-python

    2. MySQL 数据库操作

    2.1 准备以下MySQL数据库环境,便于后面的实验

    名称
    host 192.168.0.30
    port 3306
    user dbuser
    passowrd 123
    database mydb
    table mytable

    2.2 简单实例

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 # Open a database connection
     5 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     6 
     7 # Create a cursor objec using cursor()
     8 cursor = conn.cursor()
     9 
    10 # SQL statement
    11 sql = 'SHOW variables like "%char%"';
    12 
    13 # Execute SQL statement using execute()
    14 cursor.execute(sql)
    15 
    16 # Get data 
    17 data = cursor.fetchall()
    18 
    19 print data
    20 
    21 # Close database connection
    22 cursor.close()
    View Code

      

    2.2 Insert 插入数据

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 '''Insert'''
     5 # Open a database connection
     6 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     7 
     8 # Create a cursor objec using cursor()
     9 cursor = conn.cursor()
    10 
    11 # SQL statement
    12 sql = 'INSERT INTO mytable(id,name) VALUES(2001,"Heburn"),(2002,"Jerry");'
    13 
    14 try:
    15     # Execute SQL statement using execute()
    16     result = cursor.execute(sql)
    17     # Commit
    18     conn.commit()
    19     print 'Insert',result,'records'
    20 except:
    21     # Rollback in case there is any error
    22     conn.rollback()
    23 
    24 # Close database connection
    25 cursor.close()
    View Code

      

    2.3 Update 更新数据

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 '''Update'''
     5 # Open a database connection
     6 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     7 
     8 # Create a cursor objec using cursor()
     9 cursor = conn.cursor()
    10 
    11 # SQL statement
    12 sql = 'UPDATE mytable SET name="Lincoln" WHERE id = 2001;'
    13 
    14 try:
    15     # Execute SQL statement using execute()
    16     result = cursor.execute(sql)
    17     # Commit
    18     conn.commit()
    19     print 'Update',result,'records'
    20 except:
    21     # Rollback in case there is any error
    22     conn.rollback()
    23 
    24 # Close database connection
    25 cursor.close()
    View Code

      

    2.4 删除数据

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 '''Delete'''
     5 # Open a database connection
     6 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     7 
     8 # Create a cursor objec using cursor()
     9 cursor = conn.cursor()
    10 
    11 # SQL statement
    12 sql = 'Delete from mytable WHERE id = 2001;'
    13 
    14 try:
    15     # Execute SQL statement using execute()
    16     result = cursor.execute(sql)
    17     # Commit
    18     conn.commit()
    19     print 'Delete',result,'records'
    20 except:
    21     # Rollback in case there is any error
    22     conn.rollback()
    23 
    24 # Close database connection
    25 cursor.close()
    View Code

      

    2.5 查询数据

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 '''Select'''
     5 # Open a database connection
     6 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     7 
     8 # Create a cursor objec using cursor()
     9 cursor = conn.cursor()
    10 
    11 # SQL statement
    12 sql = 'SELECT id, name FROM mytable WHERE id = 2002;'
    13 
    14 try:
    15     # Execute SQL statement using execute()
    16     cursor.execute(sql)
    17 
    18     # Get all records
    19     results = cursor.fetchall()
    20     for row in results:
    21         id = row[0]
    22         name = row[1]
    23         print 'id = %d, name = %s' % (id,name)
    24 
    25 except:
    26     print "Error: can't queray any data."
    27 
    28 # Close database connection
    29 cursor.close()
    View Code

      

    2.6 创建表

     1 #!/usr/bin/python
     2 import MySQLdb
     3 
     4 '''Create table'''
     5 # Open a database connection
     6 conn = MySQLdb.connect('192.168.0.30','dbuser','123','mydb')
     7 
     8 # Create a cursor objec using cursor()
     9 cursor = conn.cursor()
    10 
    11 # SQL statement
    12 sql = '''
    13 CREATE TABLE mytable (
    14     id int,
    15     name char(20)
    16 ) ENGINE = InnoDB DEFAULT CHARSET=utf8;
    17 '''
    18 
    19 try:
    20     # Execute SQL statement using execute()
    21     cursor.execute(sql)
    22 except:
    23     print "Error: can't Create table mytable."
    24 
    25 # Close database connection
    26 cursor.close()
    View Code

      


     Python3 - 数据库的操作

    1. PyMySQL 安装

    2. MySQL 数据库操作

    2.1 准备以下MySQL数据库环境,便于后面的实验

    名称
    host 192.168.0.30
    port 3306
    user dbuser
    passowrd 123
    database mydb
    table mytable

    2.2 简单实例

    import pymysql
    
    # Open the database connection
    conn = pymysql.connect(
        host = '192.168.0.30',
        port = 3306,
        user = 'dbuser',
        password = '123',
        db = 'mydb',
        charset = 'utf8'
    )
    
    # Create a cursor object using cursor()
    cursor = conn.cursor()
    
    # SQL statement
    sql = 'SELECT VERSION()'
    
    # Execute SQL query using execute()
    cursor.execute(sql)
    
    # Get a piece single of data
    data = cursor.fetchone()
    print(data)
    
    # Close database connection
    conn.close()
    View Code

    2.3 Insert 插入数据

     1 # Insert
     2 conn = pymysql.connect('192.168.0.30','dbuser','123','mydb')
     3 cursor = conn.cursor()
     4 sql = 'insert into mytable(id,name) values(1001, "Andrew");'
     5 try:
     6     cursor.execute(sql)
     7     conn.commit()
     8 except:
     9     conn.rollback()
    10 
    11 conn.close()
    View Code

    2.4 Update 更新数据

     1 # Update
     2 conn = pymysql.connect('192.168.0.30','dbuser','123','mydb')
     3 cursor = conn.cursor()
     4 sql = 'update mytable set name = "Heburn" where id = 1001;'
     5 try:
     6     cursor.execute(sql)
     7     conn.commit()
     8 except:
     9     conn.rollback()
    10 
    11 conn.close()
    View Code

    2.5 Delete 删除数据

     1 # Delete
     2 conn = pymysql.connect('192.168.0.30','dbuser','123','mydb')
     3 cursor = conn.cursor()
     4 sql = 'delete from mytable where id = 1001;'
     5 try:
     6     cursor.execute(sql)
     7     conn.commit()
     8 except:
     9     conn.rollback()
    10 
    11 conn.close()
    View Code

    2.6 Select 查询数据

    fetchone() 获取查询结果集中的一行内容

    fetchall() 获取查询结果集中的所有行内容

     1 # Database Query
     2 conn = pymysql.connect('192.168.0.30','dbuser','123','mydb')
     3 cursor = conn.cursor()
     4 sql = 'select * from mytable where id = 1001;'
     5 try:
     6     cursor.execute(sql)
     7     results = cursor.fetchall()
     8     for row in results:
     9         id = row[0]
    10         name = row[1]
    11         print("id = %d, name = %s" % (id,name))
    12 except:
    13     print('Error: unable to fetch data.')
    14 
    15 conn.close()
    View Code
    Andraw|朱标
  • 相关阅读:
    Java学习个人备忘录之继承
    Java学习个人备忘录之文档注释
    Java学习个人备忘录之数组工具类
    Java学习个人备忘录之关键字static
    Java学习个人备忘录之构造函数&this
    Java学习个人备忘录之面向对象概念
    Java学习个人备忘录之数组
    Java学习个人备忘录之入门基础
    hdoj1162-Eddy's picture(kruskal)
    hdoj1102-Constructing Roads(Kruskal)
  • 原文地址:https://www.cnblogs.com/zhubiao/p/8664801.html
Copyright © 2020-2023  润新知