pymysql模块操作数据库与mysql数据备份

匿名 (未验证) 提交于 2019-12-02 22:06:11
  • host='127.0.0.1'  #计算机的IP地址 port=3306             #数据库的端口号 user='root'           #数据库的用户名 password='root'       #用户密码 database='lucky'  #要连接数据库名 charset='utf8'        #链接数据的编码格式
  • import pymysql 1:#查询 conn = pymysql.connect(   host='127.0.0.1', #主机   port=3306, #端口号   user='root',#用户名   password='666', #密码   database='day43', #需要连接的库   charset='utf8'#指定编码 ) cursor = conn.cursor()#获取游标,默认获取的是元祖嵌套形式的数据 sql = "select * from dep;" #sql语句 ret = cursor.execute(sql) #ret 受影响的行数 print(cursor.fetchall())  #取出所有的 print(cursor.fetchmany(3))  #取出多条不写参数默认是取一条 print(cursor.fetchone())  #取出单条  cursor.scroll(3,'absolute')  #绝对移动,按照数据最开始位置往下移动3条 cursor.scroll(3,'relative')  #相对移动,按照当前光标位置往下移动3条 ''' cursor 获取游标的时候默认获取的是元祖套元祖的数据类型,可以指定使用字段的方式,来获取字典的数据格式 ''' #字典格式的游标 cursor = conn.cursor(pymysql.cursors.DictCursor)
  • #插入 conn = pymysql.connect(   host='127.0.0.1', #主机   port=3306, #端口号   user='root',#用户名   password='666', #密码   database='day43', #需要连接的库   charset='utf8'#指定编码 ) cursor = conn.cursor()#获取游标,默认获取的是元祖嵌套形式的数据 sql = "insert into t1 values (3,'xx3',18);" #sql语句 ret = cursor.execute(sql) #ret 受影响的行数 conn.commit()  #增删改操作时,需要进行提交
  • #sql注入:解决方案   cursor.execute(sql,[参数1,参数2...])  import pymysql  conn = pymysql.connect(     host='127.0.0.1',     port=3306,     user='root',     password='666',     database='day43',     charset='utf8', ) while 1:     username = input('请输入用户名:')     password = input('请输入密码:')     cursor = conn.cursor(pymysql.cursors.DictCursor)     sql = "select * from userinfo where username=%s and password=%s;"     #cursor.execute(sql,[uname,pword]) ,其实它本质也是帮你进行了字符串的替换,只不过它会将uname和pword里面的特殊字符给过滤掉。     ret = cursor.execute(sql,[username,password])     #ret我们说是得到的行数,如果这个行数不为零,说明用户输入的用户名和密码存在,如果为0说名存在     if ret:#如果输入的用户名和密码错误,这个结果为0,如果正确,这个结果为1         print('登录成功')     else:         print('账号或者密码错误,请重新输入!!!')
  • import pymysql conn=pymysql.connect(host='localhost',user='root',password='123',database='egon') cursor=conn.cursor() sql='insert into userinfo(name,password) values("xxx","123");' rows=cursor.execute(sql) print(cursor.lastrowid) #在插入语句后查看 conn.commit() cursor.close() conn.close()
#使用mysqldump实现数据库的备份 mysqldump -uroot -p -B -d 库名 > f:\数据库备份练习\crm2stru.sql Enter password: *** ''' mysqldump也是mysql数据库的一个命令,-u用户名,-p密码 -B指的是在备份数据的时候,备份的数据增加建库的语句和use语句,>号后面指定路径数据备份保存的路径和文件名 ''' #利用mysql命令回复数据 ''' 恢复数据首先要把数据库中原来的库删除,然后把备份的数据导入进来,<号表示得就是要导入进来,后面写上备份数据的路径,运行就可以回复数据 ''' mysql -u用户名 -p 密码 库名 < f:\数据库备份练习\crm2stru.sql
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!