关于mysql的使用命令(持续更新中...)
特别提示 本说明中的mysql 是基于windwos平台下的5.5 版本
安装完成后 请到mysql中设置配置文件
链接分享:链接:https://pan.baidu.com/s/1tv4ulZW1iUVl0ukn5WtV6w
提取码:rso9
(永久有效)
本篇教程的主要目的为 好记性不如烂笔头 增加自身今后学习的备忘录
学习之前 对几个关键性的关键字(语义同单词) !!! 熟记 !!!
alter 修改
insert 插入
create 创建
delete 删除
update 更新
select 查询
drop 移除 / 停止
add 增加
show 显示
IF 如果
table 表
database 数据库
from 从某某某.. / 对.某某某..
set 设置
on 多张表的连接操作
学习命令笔记:
windwos下的 cls 清屏命令 mysql 登录命令 mysql -u账户 -p密码 --prompt参数
--prompt 是进行提示符 修改
DELIMITER 修改结束符 可在登录时进行此修改 亦可通过进入mysql后修改 prompt 参数
| 参数 | 描述 |
| \D | 完整的日期 |
| \d | 当前数据库 |
| \h | 服务器名称 |
| \u | 当前用户 |
数据库
创建数据库 create database 数据库名称 character set= 编码方式; 修改数据库 alter database 数据库名称 character set =编码方式; 删除数据库 drop database 数据库名称; 显示所有数据库 show databases; 打开数据库 USE 数据库名称; 查询当前打开的数据库 SELECT DATABASE(); 查询当前数据库的详细信息 SHOW CREATE DATABASE 数据库名称;
数据表数据操作
创建表 CREATE TABLE 表名【IF NOT EXISTS】(列名称 列类型,....); 查看数据库所有表 SHOW TABLES [ FROM 表名 ] [ LIKE '条件' | WHIERE expr ]; 也可查询关于某一数据库下的表 查看表结构 SHOW COLUMNS FROM 表名; 查看表 的索引 SHOW INDEXES FROM 表名【\G】;[\G] 表示以网格形式出现 插入记录1:
INSERT [ INTO ] 表名 [ (列名,...) ] VALUES(值域,...),(值域,....); 如果省略掉列名 就要为所有的列赋值 且NOT NULL 的值一定要赋值 插入记录2: 可用于子查询
INSERT [ INTO ] 表名 SET 列名= { 值 | DEFAULT },列名 ={值 | DEFAULT }..... 插入记录3: 将查询的结果写入数据表
INSERT [ INTO ] 表名 [ ( 列名,列名,... ) ] SELECT ... 删除记录(单表)
DELETE FROM 表名 WHERE 条件; 更新记录(单表)
UPDATE 表名 SET 列名 = { 值 | DEFAULT },列名1 = { 值 | DEFAULT },列名2 = { 值 | DEFAULT }... WHERE 条件; 查询记录
SELECT 表达式 [ 列名,... ] FROM 表名 WHERE 条件 ; * 为字段过滤
查询记录的别名的使用
原名 as 别名
修改数据表
增加列 ALTER TABLE 数据表 ADD 列名 约束 【FIRST | AFTER】 列名; 默认插入到所有列名后 可通过 FIRST | AFTER 修饰 FIRST 将插入到所有列名前 AFTER 插入到指定列名后 如果不指定列名 插入到所有列名后 添加多列 添加多列不能指定位置关系 ALTER TABLE 数据表 ADD (列名 类型 约束 ,列名 类型 约束,......)
删除列 ALTER TABLE 数据表 DROP 列名 ; 删除多列 ALTER TABLE 数据表 DROP 列名 , DROP 列名 ; 如果像同时操作删除或者添加 只需要用, 分隔 例: ALTER TABLE 数据表 add 列名 类型 约束 , drop 列名; 允许新增多列的时候 进行删除操作 例:ALTER TABLE users ADD (a1 TINYINT not null,a2 TINYINT NOT NULL) ,drop m;
修改列定义 可修改类型 也可添加位置关键字 如果不填 将保持当前位置
修改类型时:将大类型改到小类型有可能造成数据丢失 AFTER TABLE 表名 MODIFY [column ] 列名 类型 【first | AFTER 列名】;
修改列名称 原理同 修改列定义
ALTER TABLE 表名 CHANGE [ COLUMN ] 待修改列名称 列新名称 类型 【 FIRST | AFTER 列名】;
数据表更名 方法1: AFTER TABLE 数据表名称 RENAME 新名称; 方法2:
可同时修改多个
RENAME TABLE 数据表名称 TO 新名称 【,数据表名称 TO 新名称,数据表名称 TO 新名称......】
约束
NULL 为空 NOT NULL 不能为空 设置为空时 应在字段类型后设置 如: alter table 表名 add 列名 类型 NOT NULL .... AUTO_INCREMENT 自动编号 必须和主键配合使用 其实值为1 每次增量为1 每次插入记录时 可在值域内 写NULL 或 DEFAULT 主键约束 每张表 只能存在一个主键 主键保证记录的唯一性 主键自动为NOT NULL PRIMARY KEY 唯一约束 唯一约束保证记录的唯一性 唯一约束的字段可以为NULL 每张表可以存在多个唯一约束 UNIQUE KEY 默认约束 DEFAULT 插入记录时 如果没有为字段赋值 则使用默认值
索引关键字 FOREIGN KEY(列名) REFERENCES 参照表 (参照表的列名)
外键约束条件 :(存在外键列的为子表 参照列为父表) 1、父表和子表必须使用相同的INNODB数据引擎 2、如果外键约束列为数字 则必须类型和符号位都相同 如果是字符 则不要求长度相同 3、外键列和参照列必须创建索引 主键会自动创建索引 4、如果外键列不存在索引的话 将自动创建索引 5、外键约束参照操作 CASCADE 父表删除将影响字表 SET NULL 从父表删除将设置字表为NULL 且字表不能是NOT NULL 约束 RESTRICT 拒绝父表更新 NO ACTION 拒绝父表更新 同 RESTRICT 此为标准sql 关键字
修改约束
添加主键约束
AFTER TABLE 表名 ADD [ CONSTRAINT [ 名称 ] ] PRIMARY KEY [索引](列名);
删除主键约束
AFTER TABLE 表名 DROP PRIMARY KEY; 添加唯一约束
可同时添加多行
AFTER TABLE 表名 ADD [ CONSTRAINT [ 名称 ] ] UNIQUE [ INDEX / KEY ] (列名,列名,列名....);
删除唯一约束
AFTER TABLE 表名 DROP {INDEX | KEY} 列名; 添加外键约束
AFTER TABLE 表名 ADD [ CONSTRAINT [ 名称 ] ] FOREIGN KEY (列名,列名....)
REFERENCES 参照表名 (参照表列名,....)
删除外键约束
AFTER TABLE 表名 DROP FOREIGN KEY 列名; 添加/删除默认索引
AFTER TABLE 表名 ALTER 列名 { SET DEFAULT 值 | DROP DEFAULT };
函数
CREATE FUNCTION 函数名称( [函数参数] ) RETURNS 返回类型
[BEGIN]
RETURN
执行语句
[NED] 说明:
如果有多个语句可使用BIGIN - END 组合复合语句 在待返回的语句前加RETURN 以返回值
在BIGIN - END 前加RETURN 会报错!!!
整型
| 数据类型 (整型) | 存储范围 |
| TINYINT | 1字节 |
| SMALLINT | 2 |
| MEDIUMINT | 3 |
| INT | 4 |
| BIGINT | 8 |
TINY SMALL MEDIUM BIG UNSIGEND 无符号类型
浮点型
| 数据类型(浮点型) | 存储范围 |
| float 【(M,D)】 | 可保留大约七位小数 |
| double【(M,D)】 |
M表示 总位数 D表示小数位数
日期时间型
| 类型 | 存储要求 |
| YEAR | 1 年份 1970~2069 |
| TIME | 3 时间类型 -8385959~8385959 |
| DATE | 3 日期 1000年1月1日~9999年的12月31日 |
| DATETIME | 8 日期时间 10000年1月1日0点~9999年的12月31号59分59秒 |
| TIMESTAMP | 4 时间戳 1970年1月1日0点~2037年 |
字符型
| 类型 | 存储需求 |
| CHAR(M) | 定长 M个字节 0<=M<=55 |
| VARCHAR(M) | 变长 0<=M<=65535 |
| TINYTEXT | L+1个字节 L<28 |
| TEXT | L+2个字节 L<216 |
| MEDIUMTEXT | L+3个字节 L<224 |
| LONGTEXT | L+4个字节 L<232 |
| ENUM('',''...) | 1或者2个字节 取决于枚举的个数 枚举 |
| SET('','',...) | 1、2、3、4、8个字节 取决于SET成员的数目 最多64个成员 集合 |
关于mysql的使用命令(持续更新中...)的更多相关文章
- Mysql注入小tips --持续更新中
学习Web安全好几年了,接触最多的是Sql注入,一直最不熟悉的也是Sql注入.OWASP中,Sql注入危害绝对是Top1.花了一点时间研究了下Mysql类型的注入. 文章中的tips将会持续更新,先说 ...
- Linux常用命令(持续更新中)
cd 目录名 :进入某个目录 ls :列出当前目录的内容 locate 文件名/目录名:寻找文件.目录 find 目录名1 -name 文件名/目录名2 :在目录1中寻找目录2 whereis 文件 ...
- Linux 基础命令 持续更新中...
1.ls 显示当前文件/文件夹 显示文件大小: ls -lh 显示隐藏文件: ls -a 显示文件详细信息: ls -l (ll)2.pwd 显示当前所在路径 cat 显示当前文件下所有内容3.cd ...
- 常用的几个Dos命令-持续更新中
1.服务相关 (1).查看服务 C:\Windows\system32>net start 已经启动以下 Windows 服务: (2).启动服务 C:\Windows\system32> ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- 【github&&git】4、git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- java视频教程 Java自学视频整理(持续更新中...)
视频教程,马士兵java视频教程,java视频 1.Java基础视频 <张孝祥JAVA视频教程>完整版[RMVB](东西网) 历经5年锤炼(史上最适合初学者入门的Java基础视频)(传智播 ...
- 史上最全的spark面试题——持续更新中
史上最全的spark面试题——持续更新中 2018年09月09日 16:34:10 为了九亿少女的期待 阅读数 13696更多 分类专栏: Spark 面试题 版权声明:本文为博主原创文章,遵循C ...
- 2020年腾讯实习生C++面试题&持续更新中(3)
2020年腾讯实习生C++面试题&持续更新中(3) hello,大家好,我是好好学习,天天编程的天天. 来给大家大家分享腾讯实习生面经了. 天天希望大家看到面经后一定要做充分的准备,结合自己掌 ...
- 2020年腾讯实习生C++面试题&持续更新中(1)
2020年腾讯实习生C++面试题&持续更新中(1) 腾讯面试整理(1) 最近大三的学生找实习生的同学非常多,给大家分享一篇腾讯实习生的面试题,关于面试题,会持续更新~~~ 也算是今天开通博客的 ...
随机推荐
- JavaScript设计模式 样例三 —— 装饰模式
装饰模式(Decorator Pattern): 定义:在不改变原对象的情况下,动态的给对象添加一些额外的职责.就功能而言,装饰模式相比生成子类更为灵活. 目的:把类的核心职责和装饰功能区分开.可以去 ...
- python 导入模块、包
1. 模块:一个有逻辑的python文件,包含变量.函数.类等.2. 包:一个包含__init__.py的文件夹,存放多个模块 import 本质是路径搜索,查找sys.path下有无你导入的 pac ...
- uboot if_changed函数
u-boot编译过程分析 u-boot.lds: $(LDSCRIPT) prepare FORCE $(call if_changed_dep,cpp_lds) u-boot: $(u-boot-i ...
- 3.docker镜像管理基础
一.docker镜像相关 1.About Docker Image Docker镜像含有启动容器所需要的文件系统及其内容,因此,其用于创建并启动docker容器. 采用分层构建机制,最底层为bootf ...
- moment使用,把某个时间时间戳转换成日期
1.某个时间时间戳转换成日期 moment(时间戳 ).format("YYYYMMDD") 2.获取某个日期当月的最后一天 moment(“2019-04-05”).endO ...
- 【bzoj3564】 [SHOI2014]信号增幅仪
题目描述: 无线网络基站在理想状况下有效信号覆盖范围是个圆形.而无线基站的功耗与圆的半径的平方成正比. 现给出平面上若干网络用户的位置,请你选择一个合适的位置建设无线基站.... 就在你拿起键盘准备开 ...
- CG-CTF | 密码重置2
跟则提示走,美滋滋: 1.找到邮箱: 2.下载备份: 3.PHP弱类型,string与int用的是“==” ........这一行是省略的代码........ if(!empty($token)&am ...
- [Codeforces 274E]:Mirror Room(模拟)
题目传送门 题目描述 有一个$n\times m$的格子图,其中有一些是黑色的,另一些为白色.从某个白色格子的中心点向左上($NW$),左下($SW$),右上($NE$),右下($SE$)四个方向中的 ...
- Linux内核调试方法总结之Call Trace
内核态call trace 内核态有三种出错情况,分别是bug, oops和panic. bug属于轻微错误,比如在spin_lock期间调用了sleep,导致潜在的死锁问题,等等. oops代表某一 ...
- 【cs231n作业笔记】一:KNN分类器
安装anaconda,下载assignment作业代码 作业代码数据集等2018版基于python3.6 下载提取码4put 本课程内容参考: cs231n官方笔记地址 贺完结!CS231n官方笔记授 ...