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 数据库即存放数据的仓库, ...
随机推荐
- rontab踩坑(三):crontab定时任务调度机制与系统时间/时区的不一致
解决方案: 因为我们的服务器在是肯尼亚: 我么查看一下localtime 是否和 时区一致? 可以看到是一致的. 应该是是配置改动后未重启! service crond restart
- 题解 BZOJ1026 & luogu P2657 [SCOI2009]windy数 数位DP
BZOJ & luogu 看到某大佬AC,本蒟蒻也决定学习一下玄学的数位$dp$ (以上是今年3月写的话(叫我鸽神$qwq$)) 思路:数位$DP$ 提交:2次 题解:(见代码) #inclu ...
- asp.net上传大文件的解决方案
IE的自带下载功能中没有断点续传功能,要实现断点续传功能,需要用到HTTP协议中鲜为人知的几个响应头和请求头. 一. 两个必要响应头Accept-Ranges.ETag 客户端每次提交下载请求时,服务 ...
- Linux命令行学习日志-ps ax
当我们需要查询某个运行中的进程的时候,这个命令就显得很有用了,可以查看当前进程的PID和状态(S代表睡眠,SW代表睡眠和等待,R表示运行中) ps ax //查看当前运行中的进程
- 7.12T1序列
1.序列 [问题描述] Hzy 得到了一个字符串,这个字符串只有’A’,’G’,’C’,’T’这四种字符,她发现这个 序列中连续 k 个字符可以形成一种新的字符序列,她称这种序列为 Hzy 序列,她现 ...
- Mybatis源码学习之parsing包(解析器)(二)
简述 大家都知道mybatis中,无论是配置文件mybatis-config.xml,还是SQL语句,都是写在XML文件中的,那么mybatis是如何解析这些XML文件呢?这就是本文将要学习的就是,m ...
- MyBatis动态Sql 的使用
Mapper.xml提示: 1:mapper包中新建一个文件:mybatis-3-mapper.dtd 2:在web app libraries/mybatis.jar/org.apache.ibat ...
- Tomcat配置 https SSL证书
HTTP与HTTPS的区别:HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Soc ...
- js动态往对象里边添加一项
第一种方法let obj ={"name":"tom","age":16}let key = "id";let valu ...
- js判断是否联网
// navigator.onLine if (navigator.onLine){ //正常工作 console.log("在线状态............................ ...