python-Web-数据库-mysql
概念:
服务器->数据库管理系统(软件)->数据库(文件夹)->表(文件)
关系型
安装与配置:
>>>下载-安装-环境变量
>>>启动 mysql | net start mysql | 手动
>>>查看启动 tasklist | findstr mysql | netstat -an
>>>本机ID ipconfig
>>>登陆 mysql -h服务器ip -P3306 -u用户名 -p密码
>>>退出 exit | quit | \q
>>>关闭 net stop mysql | tskill mysqld
语句:
>>>定义DDL(data definition language) ---(数据库,表,视图,索引)
>>>操作DML 数据-----(插入数据 insert,删除 delete,更新 update ,查询select)
文件夹----(creat , drop ,alter , show)
>>>控制DCL(grant,revoke,begin transaction,commit,roolback)
>>>数据库操作:
增:create database [if not exists] 库名 character set 编码方式;
删:drop database 库名;
改:alter databasse 库名 character set 编码方式;
查:show database; 所有
Show create database 库名; 一个
>>>表操作:
增:create table [if not exists] 表名(字段 数据类型[约束],....)
删:drop table 表名
改:alter table 表名
增加字段
alter table 表名 add [colum] 字段名 数据类型 [约束]
修改字段名
alter table 表名 change 字段名 新字段名 数据类型 [约束]
删除字段
alter table 表名 drop [colum] 字段名
更改表名
alter table 表名 rename [to] 新表名
查:show tables 查看当前数据下有哪此数据表
show create talbe 表名 查看建表信息
desc 表名 查看表结构
>>>数据操作:
增:insert into 表名 [(字段名1,字段名2,…字段名n)] VALUES(‘值1’,‘值2’,…,’值n’);
删:delete from 表名 [where 条件子句] [order by 字段 asc|desc ] [limit 条数]
Truncate table 表名;删除所有
改:update 表名 set 字段名=新值,字段名=新值,....... [where 条件子句] [order by 字段 asc|desc ] [limit 条数]
查:select 字段1,字段2,...... from 表名 [where 条件子句] [group by 字段][order by 字段] [limit [起始值] 条数]
>>>约束:
非空约束 not null
主键约束 primary key
唯一约束 unique key
默认约束 default
>>>比较操作符:
=,<=>,!=,<>,<,<=,>,>=,is null,is not null,a between b and c,like 匹配,模糊匹配%_,a in (,,,)
>>>逻辑操作符:
And,&& or,|| xor not,!
>>>Alias 别名:
SELECT 字段名 AS 别名 FROM 表名
SELECT * FROM 表名 AS 表别名
>>>distinct 去重复:
SELECT DISTINCT 字段名称 FROM 表名称
>>>聚合函数:
avg() 平均值
count() 总记录数,不包括null
max() 最大值
min() 最小值
sum() 求和
时期函数:
now()
curdate()
curtime()
数学函数:
ABS()绝对值
ceil() 向上取整
floor 向下取整
round() 四舍五入
rand() 随机数
mod() 取余
加密函数:
password()
md5()
>>>连接类型:
多表查询:select 字段列表 from 表1,表2,表3...... where 连接条件1 and 连接条件2 .......
内连接:inner join
外连接:left join|right join select 字段列表 from 表1 join 表2 on 连接条件 显示条件
>>>备份还原:
mysqldump -h服务器 -P端口 -u用户名 -p密码 数据库名称 > 备份文件路径
source 备份文件路径(需要先登录到mysql 并且 use数据库)
>>>权限:
创建用户 create user 用户名@服务器名称 identified by “密码”
删除用户 drop user 用户名@服务器名
修改密码 set password [for 用户名@服务器名] =password('新密码')
授权 grant 权限列表 on 对象列表 to 用户@服务器
权限列表:all,create,alter,insert,delete,update,select,index,drop,grant....
对象列表:库名.表名,库名.*,*.*
撤权 revoke 权限列表 on 对象列表 from 用户列表@服务器
查看权限 show grants for 用户名@服务器名
刷新权限 flush privileges
>>>视图:create view 视图名称 as select语句 从已经存在的表中查询得来的一张虚拟表
>>>触发器:使用触发器可以定制用户对表进行【增、删、改】操作时前后的行为,注意:没有查询
>>>存储过程:CREATE PROCEDURE 过程名(参数名 数据类型,...) 过程体
>>>事务:事务具备4种特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持续性(Durability)
rollback回滚
python-Web-数据库-mysql的更多相关文章
- python读取数据库mysql报错
昨天在学习PYTHON读取数据库的知识时,一直在报错,找不到原因. 最后同事说是语法错误. import sysreload(sys)sys.setdefaultencoding('gb18030') ...
- python之数据库(mysql)操作
前言: 最近开始学django了,学了下web框架,顿时感觉又会了好多知识.happy~~ 这篇博客整理写下数据库基本操作,内容挺少.明天写SQLAlchemy. 一.数据库基本操作 1. 想允许在数 ...
- 6-2 python 操作数据库mysql
1.python操作MySQL的 查询(select操作) 步骤 import pymysql # 1.建立数据库连接 conn = pymysql.connect(host='118.24.3.40 ...
- python插入数据库mysql
#-*- coding:utf-8 -*- import MySQLdb #alter table test add index prefixIdx_test(ext(2));//前缀索引 try: ...
- web.py+mysql插入中文提示query = query.encode(charset) UnicodeEncodeError: 'latin-1' codec can't encode characters in position 86-100
对于中文编码的问题,总会出现各种各样恶心的错误,还不知道应该怎么解决,首先,你从最开头就应该关注编码问题,尽量保证所有的编码方式都是一致的 用python+web.py+mysql来写程序,首先要保证 ...
- python web开发——django学习(一)第一个连接mysql数据库django网站运行成功
1.新建一个项目 2.新建一些文件夹方便管理 3.新建一个项目叫message 4.连接数据库 python web开发Django连接mysql 5.在数据库里自动生成django的表 6.运行 ...
- python——django使用mysql数据库(一)
之前已经写过如何创建一个django项目,现在我们已经有了一个小骷髅,要想这个web工程变成一个有血有肉的人,我们还需要做很多操作.现在就先来介绍如何在django中使用mysql数据库. 前提:已经 ...
- Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器
Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器 闲着无聊的时候部署了一个Django项目玩,用vm虚拟机部署的. 准备工作 我使用的系统是Ubuntu16 ...
- Python交互数据库(Mysql | Mongodb | Redis)
数据库 Mysql Mysql MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品 MyS ...
- Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)
day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库: 简称:DataBase ---->DB 数据库即存放数据的仓库, ...
随机推荐
- ak-2
1.人大金仓数据 jdbc 安装完成之后有个jdbc的文件夹 里边就是 jdbc包,相应的window前端工具有jdbc示例,因为太多没看全呢,有一个“”模式“”的概念 jdbc连接时如果要指定模 ...
- firefox ie 比较 relative path
relative path 对于firefox ie 来说是不同的 在ie中 <base href="/">起基础url作用 此时 <a href="& ...
- freemodbus收藏学习网址
https://www.cnblogs.com/axinno1/p/8521481.html https://blog.csdn.net/xukai871105/article/details/216 ...
- flutter 项目中打印原生安卓的log信息
因为项目的需要 在flutter 中调用安卓的方法 再用安卓的方法去调用c写的so包 方法 如果当前项目下面没有android stduio 自带的logcat 那就利用下面的方法 在安卓代码中引入 ...
- 置换的玩笑——DFS&&暴力
题目 链接 题意:一个$1$到$n$的序列被去掉空格,需要将其还原.例如$4111109876532$可还原成$4 \ 1 \ 11 \ 10 \ 9 \ 8 \ 7 \ 6 \ 5 \ ...
- ACM-ICPC 2017 南宁赛区现场赛 M. The Maximum Unreachable Node Set(二分图)
题目链接:https://nanti.jisuanke.com/t/19979 题意:给出一个 n 个点,m 条边的 DAG,选出最大的子集使得其中结点两两不能到达. 题解:参考自:https://b ...
- Xilinx的IP核接口命名说明
s_axis中的s表示:slave(从); m_axis中的m表示:master(主). axis表示AXI(一种总线协议) Signal.
- node中的crypto内置模块
crypto模块的目的是为了提供通用的加密和哈希算法.用纯JavaScript代码实现这些功能不是不可能,但速度会非常慢.Nodejs用C/C++实现这些算法后,通过cypto这个模块暴露为JavaS ...
- 集合家族——Vector
一.vector简介 Vector 可以实现可增长的对象数组.与数组一样,它包含可以使用整数索引进行访问的组件.不过,Vector 的大小是可以增加或者减小的,以便适应创建 Vector 后进行添加或 ...
- ida 下载
链接:https://pan.baidu.com/s/1Rs2UOSfroBGf_MIkJv0cGw 提取码:kjqd 官网:https://www.hex-rays.com/updida.shtml