• 数据库——pymysql模块的使用(13)


    1.基本用法——建立链接,获取游标,执行sql语句,关闭

    • 建立远程链接账号和权限
    • mysql> grant all on *.* to 'root'@'%' identified by '123';
      Query OK, 0 rows affected, 1 warning (0.40 sec)
      
      mysql> flush privileges;
      Query OK, 0 rows affected (0.23 sec)
    • #-*- coding:utf-8 -*-
      import pymysql
      user = input("用户名:").strip()
      pwd = input("密码:").strip()
      #建立链接
      conn = pymysql.connect(
          host = "192.168.110.1",
          port = 3306,
          user = "root",
          password = "123",
          db = "db1",
          charset = "utf8"
      )
      
      #拿游标
      cursor = conn.cursor()
      
      #执行sql
      sql = 'select * from user_info where name = %s and pwd = %s'
      print(sql)
      rows = cursor.execute(sql,(user,pwd))
      #关闭
      cursor.close()
      conn.close()
      
      if rows:
          print("登录成功")
      else:
          print("登录失败")
      示例

    2.增删改

    • #-*- coding:utf-8 -*-
      import pymysql
      #建立链接
      conn = pymysql.connect(
          host = "192.168.110.1",
          port = 3306,
          user = "root",
          password = "123",
          db = "db1",
          charset = "utf8"
      )
      
      #拿游标
      cursor = conn.cursor()
      
      #执行sql
      ###########增############
      # sql = 'insert into user_info(name,pwd) values (%s,%s)'
      # #插入一条记录
      # rows = cursor.execute(sql,('xxx',123))
      # conn.commit()
      
      # #插入多条记录
      # rows = cursor.executemany(sql,[('xyy','ba'),('yxy','abc'),('yyy','dhdf')])
      # conn.commit()
      # print(rows)
      
      ###########删############
      # sql = "delete from user_info where id = %s ;"
      # rows = cursor.execute(sql,(3,))
      # conn.commit()
      # print(rows)
      
      ###########改############
      
      sql = 'update user_info set pwd = %s where name = "egon4" '
      rows = cursor.execute(sql,'aaa')
      conn.commit()
      print(rows)
      #关闭
      cursor.close()
      conn.close()
      示例

    3.查

    • #-*- coding:utf-8 -*-
      import pymysql
      #建立链接
      conn = pymysql.connect(
          host = "192.168.110.1",
          port = 3306,
          user = "root",
          password = "123",
          db = "db1",
          charset = "utf8"
      )
      
      #拿游标
      # cursor = conn.cursor()
      cursor = conn.cursor(pymysql.cursors.DictCursor)#以字典形式显示
      #执行sql
      ###########查############
      sql = 'select * from user_info;'
      rows = cursor.execute(sql)
      # print(rows)
      #一次取一个
      # print(cursor.fetchone())  #打印一条记录
      # print(cursor.fetchone())
      # print(cursor.fetchone())
      # print(cursor.fetchone())
      # print(cursor.fetchone())
      # print(cursor.fetchone())
      # print(cursor.fetchone())
      
      # print(cursor.fetchmany(2))#一次取多个
      # print(cursor.fetchall())#取所有
      
      cursor.scroll(3,mode='absolute') # 相对绝对位置移动
      # cursor.scroll(3,mode='relative') # 相对当前位置移动
      print(cursor.fetchone())
      cursor.scroll(1,mode='relative') # 相对当前位置移动
      print(cursor.fetchone())
      #关闭
      cursor.close()
      conn.close()
      示例——查

    4.获取插入的最后一条数据的自增ID

    • #-*- coding:utf-8 -*-
      import pymysql
      #建立链接
      conn = pymysql.connect(
          host = "192.168.110.1",
          port = 3306,
          user = "root",
          password = "123",
          db = "db1",
          charset = "utf8"
      )
      
      #拿游标
      cursor = conn.cursor()
      
      #执行sql
      ###########增############
      sql = 'insert into user_info(name,pwd) values (%s,%s)'
      rows = cursor.executemany(sql,[('xyyx','ba'),('yxyx','abc'),('yyyx','dhdf')])
      print(cursor.lastrowid)#在插入语句后查询
      conn.commit()
      
      #关闭
      cursor.close()
      conn.close()
      View Code
  • 相关阅读:
    开发入门
    Web开发的四个域
    JSP语法
    JSP入门
    变量的作用范围
    面向对象
    C#编译执行过程
    css3的渐变、背景、过渡、分页
    css3选择器总结
    css3基础选择器
  • 原文地址:https://www.cnblogs.com/GraceZ/p/8511454.html
Copyright © 2020-2023  润新知