单表查询的完整语法

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的更多相关文章

  1. python 获取mysql数据库列表以及用户权限

    一.需求分析 需要统计出当前数据库的所有数据库名,以及每个用户的授权信息. 获取所有数据库 在mysql里面,使用命令: show databases 就可以获取所有数据库了 获取所有用户 执行命令: ...

  2. Oracle 表空间和用户权限管理

    一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻 ...

  3. [Django]用户权限学习系列之权限管理界面实现

    本系列前三章: http://www.cnblogs.com/CQ-LQJ/p/5604331.htmlPermission权限基本操作指令 http://www.cnblogs.com/CQ-LQJ ...

  4. [Django]用户权限学习系列之设计自有权限管理系统设计思路

    若在阅读本片文章遇到权限操作问题,请查看本系列的前两章! http://www.cnblogs.com/CQ-LQJ/p/5609690.html和http://www.cnblogs.com/CQ- ...

  5. [Django]用户权限学习系列之User权限基本操作指令

    针对Django 后台自带的用户管理系统,虽说感觉还可以,但是为了方便用户一些操作,特别设计自定义的用户权限管理系统. 在制作权限页面前,首先需要了解权限和用户配置权限的指令,上章讲到权限的添加,删除 ...

  6. [Django]用户权限学习系列之Permission权限基本操作指令

    若需建立py文件进行测试,则在文件开始加入以下代码即可 #coding:utf-8 import os os.environ.setdefault("DJANGO_SETTINGS_MODU ...

  7. linux用户权限相关内容查看

    linux用户权限相关内容查看 1   用户信息 创建用户一个名为 webuser 的账号,并填写相应的信息: root@iZ94fabhqhuZ:~# adduser webuser Adding ...

  8. Asp.Net Core 项目实战之权限管理系统(7) 组织机构、角色、用户权限

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  9. 练习:python 操作Mysql 实现登录验证 用户权限管理

    python 操作Mysql 实现登录验证 用户权限管理

随机推荐

  1. 如何获取google Api Key

    1.使用keytool申请获取MD5值 1.1 找到你的debug.keystore Windows Vista/7: C:\Users\<username>\.android\debug ...

  2. vue项目优化之路由懒加载

    const login = () =>import('@/views/login'); export default new Router({ routes:[ { path:'/login', ...

  3. 4.Mysql中的运算符

    4.Mysql中的运算符运算符用来连接表达式.运算符包括:算术运算符.比较运算符.逻辑运算符.位运算符. 4.1 算术运算符算术运算符包括加(+).减(-).乘(*).除(/).取模(%,MOD) 5 ...

  4. Java基础之—反射

    反射是框架设计的灵魂 (使用的前提条件:必须先得到代表的字节码的Class,Class类用于表示.class文件(字节码))   一.反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够 ...

  5. js 闭包 弊端

    闭包有许多有趣的用途,Javascript的两个特征使它这么有趣:1. function是一个对象,它跟数组,Object一样,地位平等.2. Javascript变量作用域范围.<Javasc ...

  6. Next generation sequencing (NGS)二代测序数据预处理与分析

    二代测序原理: 1.DNA待测文库构建. 超声波把DNA打断成小片段,一般200--500bp,两端加上不同的接头2.Flowcell.一个flowcell,8个channel,很多接头3.桥式PCR ...

  7. Luogu 2575 高手过招-SG函数

    Solution SG函数跑一遍就过了ouo Code #include<cstring> #include<cstdio> #include<algorithm> ...

  8. MySQL自带的4个数据库

    安装完 MySQL 后会发现有四个自带的数据库: information_schema -- 该数据库保存了 MySQL 服务器所有数据库的信息.比如数据库的名称.数据库中的表名称.访问权限.数据库中 ...

  9. Tomcat的下载、安装、启动与关闭

    ubuntu server 16.04 从官网下载 Binary Distributions 版本的相应的压缩包, https://tomcat.apache.org/download-90.cgi ...

  10. 记录点复习题目和linux学习

    哈希怎么底层.key放数组哪部分里面 HashMap实际上是一个“链表散列”的数据结构,即数组和链表的结合体. 开网页怎么获取页面 linux 看进程的cpu 和内存占用率 看哪个端口被占用     ...