zoukankan      html  css  js  c++  java
  • Python--sql注入

    import pymysql

    conn = pymysql.connect(host='211.149.218.16', user='jxz', password='123456', db='jxz', port=3306, charset='utf8')
    cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
    name = 'zdq'
    sex = 0
    cur.execute('select * from bt_stu where real_name=%s and sex=%s', (name, sex)) # 可以防止sql注入
    print(cur.fetchall())


    def test(a, b):
    print(a, b)


    li = [1, 2]
    test(*li)
    d = {'a': '123', 'b': '456'}
    test(**d)


    def op_mysql_new(sql1, *data):
    # 利用*data可变参数,就能防止sql注入
    print(sql1)
    print(data)
    cur.execute(sql1, data)
    print(cur.fetchall())


    sql = 'select * from user where username=%s and id=%s'
    name = 'haha'
    id1 = 140
    op_mysql_new(sql, name, id1)

    # 同时执行多个sql executemany
    sql = 'insert into seq (blue,red,date) values (%s,%s,%s)'
    all_res = [
    ['16', '01,02,03,05,09,06', '2018-01-28'],
    ['15', '01,02,03,05,09,06', '2018-01-28'],
    ['14', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ['13', '01,02,03,05,09,06', '2018-01-28'],
    ]
    cur.executemany(sql, all_res)
    conn.commit()
  • 相关阅读:
    进程与线程
    linux网关服务器
    linux硬盘分区和fdisk命令
    MyISAM与InnoDB两者之间区别与选择(转)
    系统吞吐量与QPS/TPS
    linux最大打开文件句柄数
    内存性能测试 Memtester+mbw
    硬盘性能测试
    使用JNA访问WindowsAPI操作Windows窗口元素
    [博客页面装饰]----[人体时钟]插件
  • 原文地址:https://www.cnblogs.com/wangsilei/p/8407282.html
Copyright © 2011-2022 走看看