广州37期_罗子鹏 发表于 2021-12-15 19:14:44

第九天笔记

面试题:
1.了解mysql和oracle数据库的区别
2.了解Redis数据库的特点
   包含哪些数据格式
   记几条Redis数据库里的指令
   了解Redis的雪崩机制


常见的数据库:
mysql(免费)、oracle(收费)、sql server(Linux系统不选择)
Redis缓存数据库(非关系型数据库)

mysql服务的启动、关闭、重启、查询状态的操作
service mysqld start ==》启动服务
service mysqld status ==》查看服务状态
service mysqld stop ==》停止服务
service mysqld restart ==》重启

登录mysql
第一次登录(未设置密码):不需要输入密码
mysql -uroot -p

退出:quit、exit、Ctrl+C

设置密码mysqladmin -uroot password '123456'

设置密码后的登录:输入密码
密文mysql -uroot -p 回车后打密码
明文mysql -uroot -p密码

忘记密码,在/etc/my.cnf中第二行添加(必须正确添加)
skip-grant-tables
添加后重启服务
跳过验证直接进入
-------------------------------------------------------------
进入mysql页面操作(mysql语句)
每一条都用英语分号‘;’结束,;前的都是在同一条中

show databases 查看当前数据库管理系统中所有的库
                           mysql中的信息数据库,定义整个数据库管理系统的信息
                           mysql库:定义整个数据库管理系统的权限
                           (以上两个不能删)
test库:测试库,可以删,不能以test开头命名,因为无法被其他程序识别
use +库名; 进入库
show tables;进入库后查看表

create database +新库名(只能是英文数字)创建库
select database(); 查看目前当前操作的所在库

create table 表名(字段1 字段格式,字段2 字段格式…);==》建表语句

desc +(表名test);打开对应表

alter table 原表名 rename 新表名
alter table ==》修改表

修改字段
alter table 表名 change 字段 新字段 数据属性(例如int(10)) 并去掉自然增长约束

增加约束
alter table 表名 change 字段 字段 数据属性 anto_increment;增加自增长约束

增加字段
alter table test add time date
在最后增加time字段,类型为date,定长,不需要(长度限制)

alter table test add class int(10) first;
在最前加class字段,数据属性int(10)

alter table test add sex varchar(6) after class;
在class后加数据属性为varchar(6)的sex字段

alter table test drop sex;
删除test里sex字段,后不用加数据属性

alter table test add(sex varchaer(6),age int(4));
在test表里增加多个字段,(多个字段和属性,逗号隔开)

alter table test drop 字段,drop字段;
删除test表里多个字段,逗号隔开drop 字段

alter table test modify class varchar(10) after name;
将test里的class数据属性改为varchar(10)
放在name后面,可以不加

modify 和 change 都可以修改表的定义
change需要些两次字段名
change可以改名,modify不行,只能修属性

drop table 表名;==》删表
drop database 库名==》删除库

删除主键约束:
alter table test drop primary key;
直接删除test的主键会报错

1.alter table test change sid sid int(10);
先删除自增长
2.alter table test drop primary key;
再删除主键(key)

直接change添加主键、约束
alter table test change sid sid int(10) primary key auto_increment;
增加test里sid字段的主键(key)和约束
只加主键就不用后面auto_increment
-------------------------------------------------------
对表中数据进行操作—增删查改
insert into ==》插入一些测试数据(只能是英文或数字)
插入数据的三种方法:

insert into 表名(字段1,字段2,字段3)values(值1,值2,值3);
字段与值要一一对应
int(10)——1
varchar(10)——‘xiaoluo/dcs37’
float(20,2)——89.8878 【select *from 表名看时,只有89.89】
bigint(20)——18966667777
date——‘2021-12-15’
插入数据时,字段类型为char、varchar、date型要加‘’或“”

insert into 表名 values(值1,值2,值3…)
值要跟表中字段一一对应
对表中所有字段进行插入值
insert into 表名(字段1,字段2,字段3) values(值1,值2,值3);
因为主键+自增长,所以会在原来的最大值加1
NULL表示没有插入值,不占字节
phone没有插入值,但是有默认值约束,自动填充
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjt-AmHOlU63ZT0giGOqKtns\dfc0d3b02b9d4ca6839d9d706095b7e7\_90$~1r9~)pg8uh6u``{406.png
insert into 表名(字段1) values(值1),(值2);
在表的某字段插入多行数据
数据错误会插入失败显示0000-00-00
字段存在not null 非空约束,就会以空白呈现,占字节
int型数据是不能保留超过21474847的数值
当字段为主键+自增长的形式,当它为21474847时,再插入会报主键重复



select ==》查
select *from 表名;==》查询所有字段的值
————————————————————————————————
int(10)==》数据宽度为10的整型,整数型,mysql保存数字的数据的一个长度常见的约束
primary key==》主键约束,一个表中只有一个主键,说明这个字段是这个表的主键,整一列的数据是唯一的,不重复,而且不能为空
anto_increment==》自增长约束,要结合着主键使用
not null==》非空约束 必填信息,不能不填
default ==》默认值约束 ,如果不对该字段插入值,那么久直接插入默认值

varchar(20)==》可变长字符串,对应的值是可以为任意的数据(字母,中午、特殊字符,空格等等),插入数据时要使用引号‘’,在引
                               号‘’里面写入数据,后面的20表示字符长度,一个字母占一个字符长度,中文utf-8编码占三个字符,
                               GBK编码占2个字符

char==》定长字符串,也是保存字符串

carchar(可变长字符串)和char(定长字符串)的区别:
char==》固定占磁盘255个字符,varchar最大占2^16次方个字符
char==》查询性能会好些,但是不节约资源
varchar==》的性能差一点,但是节约资源,可以保存0~65535个字符
float(20,2)==》浮点型,保存小数,最大占4个字节,(20,2)表示数据宽度可以保存20,2表示小数点后两位
double==》浮点型,保存小数,最大占8个字节
bigint(20)==》大数字,整形,整数型,占8个字节

一个字节 0000 0000
4个字节 0000 0000 0000 0000 0000 0000 0000 0000
int型最大保存的数字范围是- 2^31~2^31=±2147483647
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjt-AmHOlU63ZT0giGOqKtns\09a65a94046140a88afa5cc096530fe2\00m254fix@ua8fxl269a9
——————————————————————————————————————

页: [1]
查看完整版本: 第九天笔记