用户权限,pymysql
单表查询的完整语法
select [distinct] [*|字段|聚合函数|表达式] from table
where
group by
having
distinct
order by
limit
mysql 用户管理
权限优先级:
user >db>table_priv>columns_priv
创建账号:
create user ⽤户名@"ip地址" "identified" by 密码;
create user tom@"192.168.101" identified by "123";
该语句表⾯tom只能在101机器上使⽤,别的机器就⽆法登录
⽤%可以表示在任意机器可⽤
注意:该⽅式创建的账号没有任何权限
需要使⽤授权语句
授权:
授权语句执行时如果账号不存在会自动创建账号,默认只有root才能为其他账号授权
grant all on *.* to tom@'localhost' identified by '123';
该语句中的all不包括grant 权限,要获得授权权限需要在后面加上with grant optin
*.*表示可以操作任何数据库,任何表
db.*表示可以操作db数据库下的任何表
db.t1表示可操作db数据库下的t1表
grant select(id) on db.t1 to tom@'localhost' identified by '123'
表示只能查看db库下t1表的id
删除用户 drop user@'host'
刷新权限表 flush privileges
pynysql
获取链接对象
conn=pymysql.connect(
host='127.0.0.1',
user=root,
password='123';
database='day0916';
port=3306,
charset='utf8')
获取游标对象
cursor=conn.cursor(pymysql.cursor.DictCursor)
#其中pymysql.cursor.DictCursor是指定返回的结果类型为字典,不写默认就是元组类型
查询数据
res=cursor.execute('select * from emp')#如果是select语句返回的res则是查询结果的条数
获取执行结果
提取数据
fetchone()获取一条数据
fetchmany(2)获取指定条数的数据
fetchall()获取剩余全部数据
print(cursor.fetchone())#all,many
scroll
cursor.scroll(1,'absolute')#absolute绝对移动
cursor.scroll(1,'relative')#absolute相对移动
commit与rollback
pymsql默认是不对表中记录的修改操作提交的,但是删库删表是不可恢复的
cursor.execute('insert into emp...')
conn.commit()#提交
try:
cursor.execute('update a...')
cursor.execute('update b...')
conn.commit()
except:
conn.rollback()
要a与b的更新操作都成功才提交修改操作,否则回滚,保证了数据的安全性
用户权限,pymysql的更多相关文章
- python 获取mysql数据库列表以及用户权限
一.需求分析 需要统计出当前数据库的所有数据库名,以及每个用户的授权信息. 获取所有数据库 在mysql里面,使用命令: show databases 就可以获取所有数据库了 获取所有用户 执行命令: ...
- Oracle 表空间和用户权限管理
一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...
- [Django]用户权限学习系列之权限管理界面实现
本系列前三章: http://www.cnblogs.com/CQ-LQJ/p/5604331.htmlPermission权限基本操作指令 http://www.cnblogs.com/CQ-LQJ ...
- [Django]用户权限学习系列之设计自有权限管理系统设计思路
若在阅读本片文章遇到权限操作问题,请查看本系列的前两章! http://www.cnblogs.com/CQ-LQJ/p/5609690.html和http://www.cnblogs.com/CQ- ...
- [Django]用户权限学习系列之User权限基本操作指令
针对Django 后台自带的用户管理系统,虽说感觉还可以,但是为了方便用户一些操作,特别设计自定义的用户权限管理系统. 在制作权限页面前,首先需要了解权限和用户配置权限的指令,上章讲到权限的添加,删除 ...
- [Django]用户权限学习系列之Permission权限基本操作指令
若需建立py文件进行测试,则在文件开始加入以下代码即可 #coding:utf-8 import os os.environ.setdefault("DJANGO_SETTINGS_MODU ...
- linux用户权限相关内容查看
linux用户权限相关内容查看 1 用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...
- Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限
0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...
- 练习:python 操作Mysql 实现登录验证 用户权限管理
python 操作Mysql 实现登录验证 用户权限管理
随机推荐
- MVC报错:找到多个与名为“Home”的控制器匹配的类型。
错误原因是:在根目录中的Controller中有HomeController,而在Areas中也有一个HomeController,只是他们的命名空间不一样. 这样的话,只需要在对应的路由注册中加入命 ...
- 基础数据类型补充,及capy daty7
1,基础数据类型,总结补充. int:bit_lenth() str: captilze() 首字母大写,其余小写. upper() 全大写. lower() 全小写. find() 通过元素找索引, ...
- 1L - ASCII码排序
输入三个字符后,按各字符的ASCII码从小到大的顺序输出这三个字符. Input 输入数据有多组,每组占一行,有三个字符组成,之间无空格. Output 对于每组输入数据,输出一行,字符中间用一个空格 ...
- ES6解构赋值的应用场景
一.变量交换 1.ES6的方式 { let a=; let b=; [a,b]=[b,a]; console.log(a,b); } 输出为 2.ES5的方式 采用中间变量的方式进行存储 二.获取函数 ...
- OSGI引入Spring DM实现对服务对象的管理
一.异同 熟悉Spring的应该也都了解它的IOC的功能,那么对于在OSGI开发环境下,在使用IOC功能时有什么不同呢?最重要的一点就是Spring上下文对象,每个Spring-Powered Bun ...
- windows netcdf vs 配置
程序中添加的头文件是netcdfcpp.h文件 ************************************************************************** ...
- filedisk.sys
i386 amd http://blog.sina.com.cn/s/blog_4fcd1ea30100r19r.html
- Python的程序入口 __name__属性
python中每个模块都有一个 '__name__' 属性,当其值为 '__main__' 时,表名该模块自身在运行,否则是被引入的. 当一个模块被当做一个整体调用的时候,模块名.__name__ 的 ...
- .Net直接将Web页面table导出到Excel
项目管理系统有个统计表需要导出到Excel表中.常用的方法是在后台C#代码查询数据再写入Excel表中最后保存在目标路径. 为减轻数据库服务器的压力和保持页面的样式,能否直接将页面的表格直接导出到Ex ...
- JavaScript学习笔记:基础知识点总结
基础概念 JavaScript(以下简称Js)中数据类型:Number 字符串 布尔值 数组 对象(Js的对象是一组由键值对组成的无序集合) Js中基础概念:变量(概念和Java中变量概念类似 指示某 ...