单表查询的完整语法

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. 安装后没有IP

    修改  /etc/sysconfig/network-scripts/ifcfg-eth0 改为yes

  2. ECharts动态获取后台传过来的json数据进行多个折线图的显示,折线的数据由后台传过来

    ECharts 多个折线图动态获取json数据 效果图如下: 一.html部分 <p id="TwoLineChart" style="width:100%; he ...

  3. Struts2框架的数据封装一之属性封装(属性封装的第一种方式:对参数进行封装)

    request带着参数来,aciton对其进行处理.在学习action之前,使用的是servlet对request进行处理.request请求时会带有参数,所以我们要对这些参数进行封装. 1. 为什么 ...

  4. Oracle_PL/SQL(8) 动态sql

    动态sql0.pl/sql块的限制 不能执行ddl操作(create.drop.alter): 不能执行部分dcl操作(grant.revoke). 1.语法动态sql:在执行时才能确定要执行的sql ...

  5. 8N - 水果

    夏天来了~~好开心啊,呵呵,好多好多水果~~ Joe经营着一个不大的水果店.他认为生存之道就是经营最受顾客欢迎的水果.现在他想要一份水果销售情况的明细表,这样Joe就可以很容易掌握所有水果的销售情况了 ...

  6. 为什么CNN能自动提取图像特征

    1.介绍 在大部分传统机器学习场景里,我们先经过特征工程等方法得到特征表示,然后选用一个机器学习算法进行训练.在训练过程中,表示事物的特征是固定的. 后来嘛,后来深度学习就崛起了.深度学习对外推荐自己 ...

  7. UVALive - 3266 (贪心) 田忌赛马

    耳熟能详的故事,田忌赛马,第一行给出田忌的马的速度,第二行是齐王的马的速度,田忌赢一场得200,输一场失去200,平局不得也不失,问最后田忌最多能得多少钱? 都知道在故事里,田忌用下等马对上等马,中等 ...

  8. javascript 高级程序设计 三

    Sorry,前两张介绍的主题还是JavaScript,而第一章介绍了JavaScript和ECMAScript区别,所以前两章介绍的主题应该改为ECMAScript,但是 标题就不改了因为现在人们习惯 ...

  9. android xml解析中的null问题

    当我们从服务器或者xml文件加载xml进行解析的时候,往往报告 nullpointer 错误.这是原始代码: String short_name = doc.getElementsByTagName( ...

  10. Common tasks that you can perform with the Groovy Script test step

    https://support.smartbear.com/readyapi/docs/soapui/steps/groovy.html Get test case object To obtain ...