【狂神MySQL笔记】常用命令行语句(1)
所有的语句都是;结尾
mysql 关键字不区分大小写
学习思路:对照可视化历史记录查看sql
固定的语法或关键字必须记住
选中什么执行什么语句
查看所有数据库
show databases;
切换到某一个数据库
use xxx;
查看数据库中的所有表
show tables;
查看数据库中所有表中的所有信息
describe 表名
--简写
desc 表名
创建数据库
create database xxx;
退出连接
exit;
注释
--单行注释
/* */多行注释
CRUD:增删改查
DDL:数据库定义语言
DML:数据库查询语言
DQL:数据查询语言
DCL: 数据库控制语言
操作数据库:(了解)
操作数据库 -> 操作表 -> 操作表里的数据
操作数据库:
创建数据库:create database xxx(如果已经有,失败)
create database [if not exists] xxx;//判断是否存在
删除数据库:
drop database [if exists] xxx;//如果存在
使用数据库:
use xxx;
-- 如果表名或者字段名是一个特殊字符,就需要带``
查看数据库
show database xxx;
数据库的数据(列)类型:
整数 | ||
tinyint | 小数据 | 1个字节 |
smallint | 较小数据 | 2个字节 |
int | 标准整数(常用) | 4个字节 |
mediumint | 中等大小数据 | 3个字节 |
bigint | 较大的数据 | 8个字节 |
小数 | ||
float | 单精度 | 4字节 |
double | 双精度(较常用) | 8字节 |
decimal | 字符串形式浮点数(防止精度损失,金融计算) | |
字符串 | ||
char | 固定大小的字符串 0-255 | |
varchar | 可变长字符串0-65535(常用) | |
tinytext | 微型文本 2^8-1 | |
text | 文本串2^16-1 | |
时间日期 | ||
date | YYYY-MM-DD | 日期 |
time | HH:mm:ss | 时间格式 |
datetime | YYYY-MM-DD HH:mm:ss | 最常用 |
timestamp | 时间戳 1970.1.1到现在的毫秒数 | 常用 |
year | 年 | |
null(不要使用null进行运算) |
数据库的字段属性(重点)
unsigned | 无符号整数,不能声明为负数 |
zerofill |
0填充的,不足的位数用0来填充 int(3) 001 |
自增 |
通常理解为自增,自动在上一条记录的基础上+1默认 |
通常用来设计唯一的主键 (index),必须是整数类型 | |
可以自定义设计主键自增的起始值和步长 | |
非空 NULLnotnull |
not null:如果不给它赋值,就会报错 NULL:如果不填写值,默认值就是null |
默认 |
设置默认的值 |
用sql语句创建表(重点):
在school数据库中创建一个学生表
create table if not exists `student`(
`id` int not null auto_increment comment'学号',
`name` varchar(30) not null default '匿名' comment'姓名',
`pwd` varchar(20) not null default '123456' comment'密码',
`sex` varchar(2) not null default'男' comment'性别',
`birthday` datetime default null comment'出生日期',
`address` varchar(100) default null comment'家庭住址',
`email` varchar(50) default null comment'邮箱',
primary key (`id`)
)engine=InnoDB default charset=utf8mb4
语法
create table [if not exists] `表名`(
`字段1` 数据类型 [not null] [default' '] [auto_increment] comment' ',
`字段1` 数据类型 [not null] [default' '] [auto_increment] comment' ',
`字段1` 数据类型 [not null] [default' '] [auto_increment] comment' ',
.....
`字段1` 数据类型 [not null] [default' '] [auto_increment] comment' ',
primary key(`主键字段名`)
)engin=innodb default charset=
注意:
使用英文括号,字段和字段名用``括起来,字符串用''括起来,所以的语句后面加英文逗号,最后一句不用加
primary key()设置主键,一般一个表只有一个唯一的主键。
charset设置数据库表的字符集编码
数据库引擎:(了解)
Innodb:默认使用
Myisam:早些年使用
myisam | innodb | |
事物支持 | 不支持 | 支持 |
数据行锁定 | 不支持(表锁) | 支持 |
外键约束 | 不支持 | 支持 |
全文索引 | 支持 | 不支持 |
表空间大小 | 较小 | 较大(2倍) |
MYISAM:节约空间,速度较快
INNODB:安全性高,事物处理,多表多用户操
索引的数据库文件都存在在data目录下,本质是文件存储,一个文件夹对应一个数据库
INNODB:在数据库表中只有一个.frm文件,以及上级目录下的ibdata1文件
MYISAM对应文件:*.frm文件(表结构的定义文件)*.MYD文件(数据文件)*.MYI 索引文件
修改表:
修改表名
alter table 表名1 rename as 表名2
增加表的字段
alter table 表 add 字段名 列属性
修改表的字段(重命名,修改约束):
alter table 表名 modify 字段名 属性 (修改约束)
alter table 表名 change 字段名 字段名1(字段重名名)
删除表的字段
alter table 表名 drop 字段名
删除表
drop table [if exists] 表
所有的创建和删除操作尽量加上判断,以免报错
注意:所有字段名使用``括号
注释:--
sql关键字大小写不敏感,建议小写
所有符号全部用英文
数据管理
外键(了解)
方式1:在创建时候创建外键约束
方式2:创建成功后添加外键约束
??????
删除有外键关系的表中,必选要先删除引用别人的表(从表),再删除主表
以上的操作是物理外键,数据库级别的外键,不建议使用
最佳实践:
●数据库就是单纯的表,只用来存数据,只有行(数据)和列(字段)
●想要使用外键,用程序去实现
DML语言
数据库意义:数据存储和数据管理
DML语言:数据库操作语言
insert:
语法:
insert into 表名([字段名1,字段2])values('值1'),('值2'),('值3')
如果不写表的字段,就会一一匹配。
一般写插入语句,数据和字段一定要一一对应。
insert into `student` (name,sex)
values("张三",'男'),
("李四","男");
*由于主键自增可以省略主键
*字段和字段之间使用逗号隔开。
*字段是可以省略,但是字段和值必须一一对应。
*可以同时插入多条语句,values后面的值用逗号隔开。
【狂神MySQL笔记】常用命令行语句(1)相关推荐
- mysql login_mysql 常用命令行-login
1.mysql 登录 LOGIN In CMD: >>mysql.exe –uroot –p >>Enter Password: ******** >>mysql& ...
- Mysql常用命令行大全
Mysql常用命令行大全 第一招.mysql服务的启动和停止 net stop mysql net start mysql 第二招.登陆mysql 语法如下: mysql -u用户名 -p用户密码 键 ...
- mysql常用命令行操作-linux
mysql常用命令行操作-linux 1. mysql -h 192.168.1.1 -u root -p 123456 -h意思是数据库所在服务器ip地址 -u是数据库用户名 -p是数据库密码 2. ...
- 常用Windows命令行语句
常用命令行大全 一遍转载文章,是Windows的常用命令,下面是原网址: https://blog.csdn.net/u013250071/article/details/80608067
- mysql 连接 linux命令行_linux命令行链接mysql数据库
MySQL命令行导出数据库 MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\My ...
- MySQL 数据库常用命令小结
MySQL 数据库常用命令 1.MySQL常用命令 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删 ...
- MySql数据库常用命令宝典
对于MySql数据库的操作是使用命令行语句进行操作的,在此我总结出了MySql常用命令宝典供大家学习参考. 1.MySQL常用命令 创建数据库 create database student; 选择数 ...
- datetime类型怎么输入_精心整理MySQL基本使用(数据库的操作、数据类型、MySQL的常用命令)...
前言:瑞典 MySQL AB 公司开发,目前属于 Oracle 公司. MySQL是一种关联数据库管理系统 由于其体积小.速度快.总体拥有成本低.MySQL软件采用了双授权政策(本词条"授权 ...
- mysql数据库管理-常用命令总结
mysql常用命令行大全 1.连接Mysql 格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL. 首先打开DOS窗口,然后进入目录mysql\bin,再键入命令 ...
最新文章
- 模拟RabbitMQ网络分区
- 安装配置mac版_全面战争三国 Mac版Mod安装指南
- django 项目中使用项目环境制作脚本 通过终端命令运行脚本文件(management/commands)...
- msdev.exe 应用程序错误 的解决办法
- python学习手册记录
- 关于华为手机使用MTK刷机时出现failed to get PMT info的解决办法
- 关于富文本编辑器froala editor和百度Ueditor使用问题
- 申请清华大学计算机类的理由,青年人选择清华的七个理由
- 澳大利亚:千万别惹这几种蛇,它们可是人类的噩梦
- 爱签电子合同:湖北率先实现电子印章跨省互认
- 各国语言缩写-各国语言简称
- 二级建造师报考条件不符,选择代报名靠谱吗?
- 物联卡中心:物联网卡运营商优劣对比,你选择哪家?
- 计算机专业用什么轴的键盘,平常爱打游戏,机械键盘应该买什么轴?
- Javaweb入职第二天
- 基于FPGA的八位数字抢答器
- 企业办公模式转型,OA系统进入常态化
- 第九天:按键及中断原理
- Niuke 练习赛19 A 托米的简单表示法-括号匹配树
- code total Lines
热门文章
- NSSet与NSArray区别
- Yahoo的14条准则
- 第4届(2020)大学生集成电路创新创业大赛赛题分类
- HDU2522 A simple problem【分数与小数】
- 2018-2019 ACM-ICPC, Asia Shenyang Regional Contest题解
- 特征描述子(feature descriptor) —— HOG(方向梯度直方图)
- python入门教程pdf-python基础教程:《Python编程无师自通》PDF版百度云下载
- python有什么用-python是什么意思?python有什么用?
- python爬虫-Python爬虫学习之(一)| 从零开始
- python安装-在Python中安装包的三种方法