继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

MySQL学习总结——关系型数据库

沧海遗珠丶丶
关注TA
已关注
手记 5
粉丝 23
获赞 328

MySQL
一、概念
SQL(Structured Query Language)
结构化查询语言
作用:数据库的查询、更新、管理
例如:select *from tb;

MySQL关系型数据库
类似数据库还有Oracle、SQL server、DB2
最大优势:开源

二、win下安装
bin目录运行cmd
连接数据库mysql -uroot -p

三、配置
my-default.ini
修改配置文件
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
default-storage-engine=INNODB

四、数据库(DB)操作
show databases;
create database 库名;
drop database 库名;
use 库名;

五、数据类型
1.文本类
char(size)保存固定长度的字符串。最多255个字符
varchar(size)保存可变长度的字符串。最多255个字符。
注:如果值得长度大于255,则被转换为text类型
tinytext 最大长度255
text 最大长度65535
mediumtext 最大长度16777215
longtext 最大长度4294967295
enum(x,y,z,etc.)允许输入可能值得列表,最大65535个值
set 与enum类似,最多包含64个列表项
2.数字类
tinyint(size)1(1byte=8bit)
smallint(size)2
mediumint(size)3
int(size)4
bigint(size)8
float(size,d)
double(size,d)
decimal(size,d)
3.日期类
date()YYYY-MM-DD
datetime()YYYY-MM-DD HH:MM:SS
timestamp()使用Unix纪年(YYYY-MM-DD HH:MM:SS UTC)
time()HH:MM:SS
year()2位或4位格式的年

六、表操作
create table 表名();
drop table 表名;
show tables;
describe 表名;

七、列操作
alter table 表名 add 字段名 字段类型
alter table 表名 drop 字段名
alter table 表名 change 字段1 字段2 字段类型

alter table 表名 rename 新表名

not null 非空
default 默认约束
unique key 唯一约束
primary key auto_increment 主键自增

八、行操作
insert into 表名 values();
insert into 表名 ()values();

九、查询
select *from 表名;

where
select from 表名 where 字段 运算符 值
(between(之间) like(模糊查询) and(和) or(或者))
in
select
from 表名 where 列名 in (value1,value2...)
select from 表名 where 列名 in (select 列名 from 表名)
between
select
from 表名 where 列名 between 值1 and 值2
select from 表名 where 列名 not between 值1 and 值2
like
select
from 表名 where 列名 [not] like %abc%
%是一个通配符,代表任意字符

null的判断-is/is not
select from 表名 where 字段 is null
select
from 表名 where 字段 is not null

distinct(精确的)去掉重复
select distinct 字段 from 表名;

order by(排序)asc/desc不写默认asc
单列排序
select from 表名 [where 子句] order by 字段 asc/desc
多列排序
select
from 表名 [where 子句] order by 字段1 asc/desc, 字段2 asc/desc;

limit(分页查询)
select *from 表名 [where 子句] [order by 子句] limit m,n
从m开始查,查n条记录

insert into与select的组合使用
子查询,主要用于数据迁移
insert into 表名1 select 列1,列2 from 表名2
insert into 表名1 (列1,列2) select 列3,列4 from 表名2

十、更新数据
update 表名 set 列名=xxx [where 字句]
update 表名 set 列名1=xxx,列名2=xxx... [where 字句]

十一、数据库查询函数(from前面设置):

  1. 单行函数:upper()、lower()、Initcap()(mysql不可用)、
    length()、trim()、substr()
  2. 聚合函数:count(*)(结果集)
  3. 统计函数:max()、min()、sum()、avg()
  4. 事务处理:
    Set autocommit=0;//将事务处理设置为手动
    更新操作;//将数据储存到缓冲区
    Rollback;//事务回滚
    更新操作;//将数据储存到缓冲区
    Commit;//事务提交(将缓冲区的数据删除)

十二、备份数据库
1.C:\Program Files\MySQL Server 5.7\bin
2.进入dos窗口
3.Mysqldump –uroot –p 数据库名> 文件名.sql
4.输入密码
读取备份数据库
Source 文件名,.sql文件放到MYSQLbin目录。

十三、虚表unreal_table
Create view unreal_table AS select…
虚表只可以查询和修改里面的数据,不支持delete,insert into

打开App,阅读手记
14人推荐
发表评论
随时随地看视频慕课网APP