• pymsql模块


    pymsql模块

    • 补充 cmd 常用命令

      • pip —V 查看当前pip版本
      • pip list 查看当前Python解释器环境中安装的第三方包
    • 先cmd中下载pip install pymysql

    • sql注入问题

      • sql语句不能自己拼接,应该使用模块的方法来拼接。
    • 在pycharm中:

      • 基本步骤

      • # 1.导入数据库
        import pymysql
        name = input("请输入账户:")
        pwd = input("请输入密码:")
        
        # 2.连接数据库
        conn = pymysql.connect(
            host='127.0.0.1',    # ip地址
            port=3306,           # 一般都是3306
            user='root',         # 账户
            password='123',      # 密码
            database='day43',    # 库名
            charset='utf8'       # 不能使用-
        )
        # 3.获取光标
        cursor = conn.cursor()
        # 4. 执行sql语句
        sql = "select * from userinfo where username='%s' and password ='%s'"   #  验证
        sq2 = "insert into userinfo(username,password) values (%s,%s)"  # 增
        sq3 = "delete from userifo where username = %s"  # 删
        sq4 = "update userinfo set password = %s where username= %s"    # 改
        
        ret = cursor.execute(sql, [name, pwd])
        # 5.涉及操作数据库的  一定要提交
        conn.commit()
        # 6.关闭
        cursor.close()
        conn.close()
        

        mv = cursor.fetchall()  # 查询全部
        mv = cursor.fetchone()    # 查询一行
        mv = cursor.fetchmany(2)    # 查询多行
        
        • 返回的数据类型

          • 获取光标conn.cursor() 默认返回的是元组数据类型

          • 如果需要获取以字典的形式

            • cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
              
          • 常用的方法

            • fetchall() 获取全部信息
            • fetchall() 每一次只获取一行信息,最后没有信息时返回None
            • fetchmany(size) 获取size行信息
        • 获取刚插入数据的id,运用在多表关联

          • last_id = cursor.lastowid
        • 回滚实物,运用于语法错误中

          • # 导入pymysql模块
            import pymysql
            # 连接database
            conn = pymysql.connect(host=“你的数据库地址”, user=“用户名”,password=“密码”,database=“数据库名”,charset=“utf8”)
            # 得到一个可以执行SQL语句的光标对象
            cursor = conn.cursor()
            sql = "INSERT INTO USER1(name, age) VALUES (%s, %s);"
            username = "Alex"
            age = 18
            try:
                # 执行SQL语句
                cursor.execute(sql, [username, age])
                # 提交事务
                conn.commit()
                # 提交之后,获取刚插入的数据的ID
                last_id = cursor.lastrowid
            except Exception as e:
            1,# 有异常,回滚事务
                conn.rollback()
            cursor.close()
            conn.close()
            
      • 进阶(了解)

        • # 可以获取指定数量的数据
          cursor.fetchmany(3)
          # 光标按最开始的位置向下移动1
          cursor.scroll(1, mode="absolute")
          # 光标按照相对位置(当前位置)移动1
          cursor.scroll(1, mode="relative")
          
  • 相关阅读:
    iOS 图像渲染原理
    胶水语言
    关于事件处理
    redux有价值的文档
    redux沉思录
    详解JavaScript中的Object对象
    js 类型系统的核心:元类型、原型链与内省机制
    范畴、类型、复合、函数式编程
    js的类型系统--js基于原型的基石是所有对象最终都能够类型自证
    windows下查看dns缓存和刷新缓存
  • 原文地址:https://www.cnblogs.com/yuncong/p/9760467.html
Copyright © 2020-2023  润新知