Mysql精华版(命令大全)
数据库的操作
a) 创建数据库:create database 库名[库选项];
b) 查看数据库:show databases; show create database 库名;
c) 删除数据库:drop database [if exists] 库名
d) 修改数据库:只能修改库选项;alter database 库名 新的库选项
数据表操作
e) 选择数据库:显式的选择,在表名的前面加上库名;隐式的选择,use 库名;
f) 创建数据表:create table 表名(字段列表)[表选项];
g) 查看数据表:show tables; show create table 表名; describe|desc 表名;
h) 修改数据表:
- 修改表名:alter table 旧表名 rename to 新表名; rename table 旧表名 to 新表名
- 修改列定义:
- 增加一列:alter table 表名 add 新字段名 字段类型;
- 删除一列:alter table 表名 drop 字段名;
- 修改字段类型:alter table 表名 modify 字段名 新的字段类型
- 修改字段排序:alter table 表名 modify 字段名1 新的字段类型
first|after 字段名2
- 重命名字段:alter table 表名 change 旧字段名 新字段名 新字段类型
- 修改表选项:alter table 表名 新的表选项(default charset gbk engine Myisam)
数据操作
i) 插入数据:insert into 表名(字段列表) values(值列表)
j) 查看数据:select *|字段列表 from 表名 [where查询条件]
k) 删除数据:delete from 表名[where删除条件] | truncate table teacher; 连主键一起删
l) 修改数据:update 表名 set 字段1=新值1,字段2=新值2……[where修改条件]
列属性
a) null|not null,缺省值是null,也就是允许为空,如果是not null而又没有给该字段赋值的话,系统会首先查询该字段有没有默认值
b) default:给一个字段一个默认值,如果没有给该字段填充数据,就用该默认值来代替,通常就是配合not null一起使用
c) primary key:主键,唯一可区别其他记录的字段,一个表中只能有一个主键,也可以很多个字段组合成一个组合主键,而且不允许为空!
d) unique key:唯一键,与主键的区别是唯一键可以有很多个,而且允许为空
e) auto_increment:自动增长,使用这个属性有两个条件,第一该字段必须为整型,第二该字段必须存在索引,通常就是配合主键一起使用,也可以通过修改表选项设置自动增长的默认初始值
f) comment:列注释
m)
数值类型
1. 整数
类型 |
大小 |
有符号(最小值/最大值) |
无符号(最小值/最大值) |
tinyint(m) |
1个字节 |
-128/127 |
0/255 |
smallint(m) |
2个字节 |
-32768/32767 |
0/65535 |
mediumint(m) |
3个字节 |
-8388608/8388607 |
0/16777215 |
int(m) |
4个字节 |
-2147483648/2147483647 |
0/4294967295 |
bigint(m) |
8个字节 |
-9223372036854775808/9223372036854775807 |
0/18446744073709551615 |
2. 小数
类型 |
名称 |
大小 |
备注 |
float(M, D) |
单精度数 |
4个字节 |
默认精度位数为6到7位左右(取决于操作系统) |
double(M, D) |
双精度数 |
8个字节 |
默认精度位数为16到17位左右(取决于操作系统) |
decimal(M, D) |
定点数 也叫货币型 |
变长,大致是每9个数4个字节 |
M最大为65默认为10;D最大为30默认为0; |
日期时间型
类型 |
显示格式 |
取值 |
大小 |
DATETIME |
YYYY-MM-DD HH:MM:SS |
1000-01-01 00:00:00到9999-12-31 23:59:59 |
8个字节 |
TIMESTAMP |
YYYY-MM-DD HH:MM:SS |
1970-01-01 00:00:00到2038-01-19 03:14:07 (UTC) |
4个字节 |
DATE |
YYYY-MM-DD |
1000-01-01到9999-12-31 |
3个字节 |
TIME |
HH:MM:SS |
-838:59:59到838:59:59 |
3个字节 |
YEAR |
YYYY |
1901到2155 |
1个字节 |
字符串类型
char和varchar
都需要指定字符的长度,char中的长度是字符的长度,而varchar的长度是字节的长度
char中指定的长度就是实际占用的长度,而varchar指定的长度只是一个范围,所以varchar还要拿1-2个字节存储该字符串到底有多少个字节,并且varchar中能够实际存储的字符跟编码有关(utf8编码20000多,gbk编码30000多)
varchar对存储空间的占用更灵活,但是char的效率更高
如果字符串的长度是固定已知的,就用char,如果字符串的长度是可变的,就用varchar
text:文本类型,使用起来类似于varchar,只不过这里不需要指定长度,其中longtext认为文本没有限制
enum:枚举类型,类似于单选!实际存储的是原选项的位置,位置用1,2,3,4来代替,理论上最多可以表示65535个选项
set:集合类型,类似于多选!实际存储的是也原选择的位置,位置用1,2,4,8来代替,然后把所有选项的位置相加,理论上最多可以表示64个多选项
binary、varbinary、blob:二进制文本类型,就是字节流的char、varchar和text,在实际的项目中,很少使用
类型 |
最大长度 |
备注 |
char 定长 |
定长字符类型:255个字符 |
Char(M),M表示字符数 |
varchar 变长 |
变长字符类型:65535字节,但需要1-2个保存信息,同时由于记录的限制,实际最大值为65532 |
编码不同字符数不同: Gbk<=32767 Utf8<=21845 |
tinyText text mediumText longText |
(2^8) à 256字节 (2^16)-1 à65535字节,约64KB (2^24)-1 à16777215字节,约16M (2^32)-1字节 à4294967295字节,约4G |
定义时无需指定长度,将会自动计算 |
enum |
枚举:数字65535 |
内部存储是整型;字段只能是某一个值 |
set |
集合:最多占8个字节,即64个状态值 |
Mysql精华版(命令大全)的更多相关文章
- mysql常用的命令大全
常用的MySQL命令大全一.连接MySQL格式: mysql -h主机地址 -u用户名 -p用户密码1.例1:连接到本机上的MYSQL.首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令 ...
- MySQL语句和命令大全
前言 这里记录的是这两年学习工作过程中遇到的常用的 MySQL 语句和命令,部分是网上收集来的,出处已经不记得了,这里先谢过这些大佬.本文包括常见 SQL 语句,还有部分运维语句和命令,没有做详细的说 ...
- 常用mysql命令大全
常用的MySQL命令大全 一.连接MySQL 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再 ...
- MySQL 常用命令大全
Mysql常用命令行大全 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键 ...
- ref:mysql命令大全
Mysql常用命令行大全 ref:https://www.cnblogs.com/bluealine/p/7832219.html 1)查看表结构:desc table_name; 2)查看创建表的s ...
- Ubuntu常用命令大全 以及 PHP+MySQL代码部署在Linux(Ubuntu)上注意事项
PHP+MySQL代码部署在Linux(Ubuntu)上注意事项 https://cloud.tencent.com/developer/article/1024187 Ubuntu常用命令大全 ht ...
- Mysql命令大全
格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...
- Mysql 命令大全
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root - ...
- MySQL命令大全:MySQL常用命令手册、MySQL命令行大全、查询工具
1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root ...
随机推荐
- 安卓中的消息循环机制Handler及Looper详解
我们知道安卓中的UI线程不是线程安全的,我们不能在UI线程中进行耗时操作,通常我们的做法是开启一个子线程在子线程中处理耗时操作,但是安卓规定不允许在子线程中进行UI的更新操作,通常我们会通过Handl ...
- SpriteBuilder中返回的对象类型不正确的原因
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 最近在码代码的时候,发现一个问题,特此写出来和大家分享,希望遇到 ...
- Docker教程:docker的概念及安装
http://blog.csdn.net/pipisorry/article/details/50754385 Why docker 对于运维来说,Docker提供了一种可移植的标准化部署过程,使得规 ...
- 论文系统Step1:从日志记录中提取特定信息
论文系统Step1:从日志记录中提取特定信息 前言 论文数据需要,需要实现从服务器日志中提取出用户的特定交互行为信息.日志内容如下: 自己需要获取"请求数据包一行的信息"及&quo ...
- iOS中 常用的mac终端指令汇总 技术分享
通常情况下,只有高端用户才会经常用到终端应用.这并不意味着命令行非常难学,有的时候命令行可以轻松.快速的解决问题.相信所有Mac用户都尝试过命令行,今天为大家带来9个非常实用的命令行操作.一些命令行需 ...
- Android Studio 1.0RC1版发布
Android Studio 1.0RC1 版本发布. 以下是官网该版本说明: Android Studio 1.0 Release Candidate 1 November 20th, 2014: ...
- [Django高级]理解django中的中间件机制和执行顺序
原文来自 Understanding Django Middlewares, 这篇文章从整体上介绍了django中中间件定义,作用,和怎么样自己写中间件 –orangleliu. 注:middlewa ...
- C语言之任意进制的转换
我们都知道转换进制是一个让人比较头疼的事情,下面我的代码不是最好的,也就仅仅是一个思路而已,至少我认为使用栈来进行进制转换是比较合适的一种方法,好了,不多叙述了. #include<stdio. ...
- 敦泰FT6X06单层自容调屏
总的概括来说,自电容调屏在配置好通道个数和顺序后,只需调整AFE相关的设置参数使各通道的Raw Data和CI值符合定义的标准即可.– AFE是模拟前端的缩写-Analog Front End• Ra ...
- shell的date命令:使用方法,以及小时、分钟的计算
shell命令格式严格,不像python那样命令行中可以添加空格.如等号两边无空格.有多余空格错误,日期date命令就是最明显的例子. 命令格式: date [-u] [-d datestr] [-s ...