zoukankan      html  css  js  c++  java
  • pymysql

    1. pymysql

      • Pymysql 操作MySQL数据库

        • 连接:

          import pymysql 
          conn = pymysql.connect(host='127.0.0.1',user='root',password='root',db='day40')
          
        • 获取游标

          cur = conn.cursor()
          
        • 执行SQL(增删改查)

          sql = '......'
          cur.execute(sql)
          
        • 获取结果

          cur.fetchone()
          cur.fetchmany(num)
          cur.fetchall()
          
        • 如果涉及到修改:需要提交

          conn.commit()
          
        • 关闭游标:cur.close()

        • 关闭库:conn.close()

      • SQL注入

        • 传参数,注意SQL注入的问题,参数通过execute方法来传

          import pymysql
          
          user = input('username:')
          pwd = input('password:')
          
          conn = pymysql.connect(host='127.0.0.1', user='root', password='root', db='day40')
          cur = conn.cursor()
          
          sql = 'select * from userinfo where username = %s and password = %s'
          cur.execute(sql, (user, pwd))
          print(cur.fetchone())
          
    2. 事物和锁(锁住的东西别的用户只能查不能改)

      • 1.begin;开启事物
      • 2.select * from employee where id = 1 for update;# 查询id值,for update 添加行级锁
        1. update emp set salary= 10000 where id= 1;# 完成更新
        1. commit; #提交事物
    3. 数据的备份

      • 表的备份与恢复

        • 备份某个数据库的某些表:
          • 终端执行:mysqldump -uroot -proot 数据库名 表名 > 保存备份文件的绝对路径
        • 备份一个库中所有的表
          • mysqldump -uroot -proot 数据库名 > 保存备份文件的绝对路径
        • 恢复:进入数据库 找到放要恢复表的库 执行 :source 备份表文件绝对路径
      • 库的备份与恢复

        • 备份一个数据库

          mysqldump -uroot -proot --database 数据库名  > 保存备份文件的绝对路径
          
        • 备份多个数据库

          mysqldump -uroot -proot --database 数据库名1 数据库名2 数据库n  > 保存备份文件的绝对路径
          
        • 移库 备份所有库

          ysqldump -uroot -proot --database -all > 保存备份文件的绝对路径
          
        • 恢复 :进入数据库,然后执行:source 备份库文件绝对路径

    4. MySQL的重启关闭启动

      • Mac
        • sudo /usr/local/mysql/suport-file/mysql.server start或者stop或者restart
      • windows
        • net stop(start,restart) mysql.server
  • 相关阅读:
    git branch查看不到分支的名字解决办法
    input输入框如何只能输入非零开头的正整数
    如何修改git分支名名称
    JavaScript如何把字符串中每个单词首字母转化为大写
    JavaScript原型链的理解
    JavaScript高级程序设计第三版学习笔记(一)之数据类型区分详谈
    Vue中父子组件执行的先后顺序探讨
    我是不是该回来写点东西
    转载:引用 struts2标签详解
    mysql的重装问题......我自己的心得
  • 原文地址:https://www.cnblogs.com/he-qing-qing/p/13592334.html
Copyright © 2011-2022 走看看