MySQL学习记录
来源:互联网 发布:北航人工智能 编辑:程序博客网 时间:2024/05/16 05:52
1.MySql数据库安装
端口 3306
常见端口号:(Oracle 1521 FTP:21 SSH:22 Telnet:23 web(HTTP):80-89
DNS:53 SOCKS:1080 SNMP(网络管理协议):161 Tomcat/WDCP:8080
SMTP(发送邮件):25 POP3(接收邮件):110)
环境变量
字符集 utf8
root密码
服务器的路径
2.SQL的分类
DDL:数据定义语言:create alter drop
DCL:数据控制语言:grand if...
DML:数据操作语言:insert update delete
DQL:数据查询语言:select
3.约束
作用:保证数据的完整性
单表约束分类:
主键约束:primary key (默认唯一非空,一个表中只能有一个主键约束)
唯一约束:unique
非空约束:not null
4.使用SQL操作数据库
SQL对数据库CRUD:
基本操作:
C:create database 数据库名称 character set 字符集 collate 字符集校对规则
R:show databases;
show create database 数据库名称;(显示指定数据的字符集和校对规则)
U:alter database 数据库名称 character set 字符集 collate 校对规则;
D:drop database 数据库名称;
其他操作:
切换数据库:use 数据库名称;
显示当前操作数据库:select database();
SQL对数据库中数据表CRUD
基本操作:
C:create table 表名称字段名称 字段类型(长度) 约束,字段名称 字段类型(长度) 约束...);
R:show tables;
desc 数据库名称; (查看表结构)
U:
添加列:alter table 表名 add 列名 类型(长度) 约束
修改类类型,长度,约束:alter table 表名 modify 列名 类型(长度) 约束
删除列:alter table 表名 drop 列名;
修改列名:alter table 表名 change 旧列名 新列名 类型(长度) 约束
修改表名:rename table 表名 to 新表名
修改表的字符集:alter table 表名 character set 字符集;
D:drop table 表名;
其他操作:
SQL对数据库中数据表记录CRUD
基本操作:
C:
插入某些列:insert into 表名 (列名1,列名2,列名3) values (值1,值2,值3);
插入所有列:insert into 表名 valuse (值,值2,值3...);
R:
update 表名 set 列名=值,列名=值 [where 条件]
U:
delete from 表名 [where 条件];
start transaction;
原理:属于DML,删除所有(一条一条删记录),带事务,数据可以恢复
start transaction;
rollback;
truncate table 表名;
原理:属于DDL 删除所有(将表删除,在重建表头)数据不可以恢复
D:
基本查询:
select [distinct]*|列名 from 表名 [where 条件];
条件查询:
where子句:
比较查询:<,> ,>=,<=,<>,=
模糊查询:like;(_只能代表一个字符,%代表任意个字符)
范围查询:in;
条件关系查询:and,or,not
排序查询:(位于语句的最后)
使用order by 字段名称 asc |desc;
分组统计查询:
聚合函数:sum(),min(),max(),avg(),count();
where 子句后不可以跟着聚合函数如果
其他操作:
查看MySql的字符集:select variables like '%character%';
总结:
顺序:
S(select)...F(from)...W(where)...G(group by)...H(having)...O(order by);
端口 3306
常见端口号:(Oracle 1521 FTP:21 SSH:22 Telnet:23 web(HTTP):80-89
DNS:53 SOCKS:1080 SNMP(网络管理协议):161 Tomcat/WDCP:8080
SMTP(发送邮件):25 POP3(接收邮件):110)
环境变量
字符集 utf8
root密码
服务器的路径
2.SQL的分类
DDL:数据定义语言:create alter drop
DCL:数据控制语言:grand if...
DML:数据操作语言:insert update delete
DQL:数据查询语言:select
3.约束
作用:保证数据的完整性
单表约束分类:
主键约束:primary key (默认唯一非空,一个表中只能有一个主键约束)
唯一约束:unique
非空约束:not null
4.使用SQL操作数据库
SQL对数据库CRUD:
基本操作:
C:create database 数据库名称 character set 字符集 collate 字符集校对规则
R:show databases;
show create database 数据库名称;(显示指定数据的字符集和校对规则)
U:alter database 数据库名称 character set 字符集 collate 校对规则;
D:drop database 数据库名称;
其他操作:
切换数据库:use 数据库名称;
显示当前操作数据库:select database();
SQL对数据库中数据表CRUD
基本操作:
C:create table 表名称字段名称 字段类型(长度) 约束,字段名称 字段类型(长度) 约束...);
R:show tables;
desc 数据库名称; (查看表结构)
U:
添加列:alter table 表名 add 列名 类型(长度) 约束
修改类类型,长度,约束:alter table 表名 modify 列名 类型(长度) 约束
删除列:alter table 表名 drop 列名;
修改列名:alter table 表名 change 旧列名 新列名 类型(长度) 约束
修改表名:rename table 表名 to 新表名
修改表的字符集:alter table 表名 character set 字符集;
D:drop table 表名;
其他操作:
SQL对数据库中数据表记录CRUD
基本操作:
C:
插入某些列:insert into 表名 (列名1,列名2,列名3) values (值1,值2,值3);
插入所有列:insert into 表名 valuse (值,值2,值3...);
R:
update 表名 set 列名=值,列名=值 [where 条件]
U:
delete from 表名 [where 条件];
start transaction;
原理:属于DML,删除所有(一条一条删记录),带事务,数据可以恢复
start transaction;
rollback;
truncate table 表名;
原理:属于DDL 删除所有(将表删除,在重建表头)数据不可以恢复
D:
基本查询:
select [distinct]*|列名 from 表名 [where 条件];
条件查询:
where子句:
比较查询:<,> ,>=,<=,<>,=
模糊查询:like;(_只能代表一个字符,%代表任意个字符)
范围查询:in;
条件关系查询:and,or,not
排序查询:(位于语句的最后)
使用order by 字段名称 asc |desc;
分组统计查询:
聚合函数:sum(),min(),max(),avg(),count();
where 子句后不可以跟着聚合函数如果
其他操作:
查看MySql的字符集:select variables like '%character%';
总结:
顺序:
S(select)...F(from)...W(where)...G(group by)...H(having)...O(order by);
阅读全文
0 0
- mysql学习记录 一
- mysql 学习记录
- MySQL 学习记录
- mysql学习记录001
- MySql入门学习记录
- mysql 学习记录
- 学习记录----linux+mysql
- MySql学习记录
- 【学习记录】Mysql++
- mysql 学习记录
- MySQL学习记录
- mysql学习记录
- mysql学习记录
- MySQL SubQuery学习记录
- MySQL学习记录
- MySql学习记录
- Linux MySql学习记录
- MYSQL学习记录
- C语言内存管理
- Java中如何生成jar(框架)
- CSS--CSS入门/CSS语法/盒子模型/CSS定位
- 洛谷P1478 陶陶摘苹果升级版
- linux下使用curl访问多参数url
- MySQL学习记录
- 张鑫旭的 HTML5 css reset
- For循环嵌套(九九乘法表和打印星星)
- 波松瓦酒的分酒趣题
- eclipse j2ee web 开发环境搭建记录
- 使用JMeter进行Web 性能测试
- 【数据结构】迷宫问题求解(链栈,DFS)
- 深度理解select、poll和epoll
- android crash 一 Android端线上NativeCrash收集的两种方法(上)