• 027 mysql


    /*
    时间:2021/12/18
    功能:MySql
    目录: 
        一: 测试code
        二: 异常处理
        三: 安全参数
    */

    一: 测试code

    import pymysql
    
    if __name__ == '__main__':
        conn = pymysql.connect(host="192.168.52.128",   # ip
                               port=3306,               # 端口
                               user="root",             # 登录用户
                               password="mysql",        # 登录密码
                               database="py",           # 数据库名
                               charset="utf8")          # 通讯编码
    
        # 获取游标
        cursor = conn.cursor()
    
        # 查询数据
        sql = "select * from st;"       # 查询语句
        row_count = cursor.execute(sql) # 执行语句
        print("SQL:执行影响行数%d" % row_count)   # 影响行数
    
        # 获出数据 : 一行
        # print(cursor.fetchone())
    
        # 获出数据 : 全部
        result = cursor.fetchall()
        for row in result:
            print(row)
    
        # 收尾操作
        cursor.close()  # 关闭游标
        conn.close()    # 关闭连接

    二: 异常处理

    import pymysql
    
    if __name__ == '__main__':
        conn = pymysql.connect(host="192.168.52.128",   # ip
                               port=3306,               # 端口
                               user="root",             # 登录用户
                               password="mysql",        # 登录密码
                               database="py",           # 数据库名
                               charset="utf8")          # 通讯编码
    
        # 获取游标
        cursor = conn.cursor()
    
        try:
            sql = "delete from st where name = '小周'"
            sql_2 = "update st set name = '铁蛋' where name = '王五'"
            row_count = cursor.execute(sql)
            row_count = cursor.execute(sql_2)
            # print("SQL:执行影响行数%d" % row_count)  # 影响行数
            conn.commit()
        except Exception as e:
            conn.rollback() # 回滚数据
    
    
        # 收尾操作
        cursor.close()  # 关闭游标
        conn.close()    # 关闭连接

    三: 安全参数

    import pymysql
    
    if __name__ == '__main__':
        conn = pymysql.connect(host="192.168.52.128",   # ip
                               port=3306,               # 端口
                               user="root",             # 登录用户
                               password="mysql",        # 登录密码
                               database="py",           # 数据库名
                               charset="utf8")          # 通讯编码
    
        # 获取游标
        cursor = conn.cursor()
    
        try:
            # # SQL注入 : 输入 ' or 1 = 1 or '
            # find_name = input("请输入物品名称:")
            # sql = "select * from st where name = '%s'" % find_name
            # row_count = cursor.execute(sql)
    
            # 安全方式
            find_name = input("请输入物品名称:")
            params = [find_name]
            count = cursor.execute("select * from st where name = %s", params)
    
            conn.commit()
    
            # 获出数据 : 全部
            result = cursor.fetchall()
            for row in result:
                print(row)
    
        except Exception as e:
            conn.rollback() # 回滚数据
    
        # 收尾操作
        cursor.close()  # 关闭游标
        conn.close()    # 关闭连接
  • 相关阅读:
    Tapestry AppModule中的方法
    Tapestry Grid
    Tapestry5之AutoLoading Module
    Tapestry Submits
    Tapestry SubmitLink
    再读Struts2之一:总括
    Java war包取之外的properties文件
    用ORACLE的高级复制实现内外网数据同步【转】
    在Oracle中实现数据库的复制
    解决ORA12560: TNS: 协议适配器错误
  • 原文地址:https://www.cnblogs.com/huafan/p/15704229.html
Copyright © 2020-2023  润新知