GZ37期_张慧香 发表于 2021-12-15 22:11:59

12.15

安装mysql:
两个方法只要用一种
方法一:在线安装
(1)安装mysql的服务端
yum install mysql-server
(2)安装mysql的客户端
yum install mysql

方法二:离线安装,通过rpm命令执行
把3个跟mysql相关的rpm文件上传到linux服务器的某个目录下,然后执行txt文件中的3条指令

安装完成可以使用以下指令检查
rpm -qa|grep 'mysql'
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\ddc3c38f0cb24157bef38082fbaddaae\`59p(z5fz9u%~xfatrppejr.png
常见的数据库:
MySQL(免费)、Oracle(收费)、sql server(如果公司是使用Linux系统就不会选择SQL server数据库)用的少
Redis缓存数据库(非关系型数据库)

mysql服务的启动、关闭、重启、查询状态的操作
service mysqld start   ===》启动mysql服务
service mysqld status===》查看mysql服务的状态
service mysqld stop==》停止mysql服务
service mysqld restart==》重启mysql的服务
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\1f9d7bc75b174fccb680b86fd7562506\2g9%o2m@n69r3%078wn_]1m.png

登陆mysql:
第一次登陆(未设置密码):不需要输入密码
mysql -uroot -p
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\2590fa1a25e94a64a02d1b9d8ccf1a01\8ek$ym.png
退出mysql有三种方式:quit、exit、Ctrl+c

设置MySQL的登陆密码:mysqladmin -uroot password "123456"
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\4144e84890e74de0964ea5aed0052b6d\8x{j8no]b%zs2y_zn(fyiq9.png
设置密码后的登陆:要输入密码
两种方式:
密文方式:mysql -uroot -p加回车键输入密码,再回车
明文方法:mysql -uroot -p123456
-u表示mysql的用户,-p表示密码

不需要操作,如果忘记密码,则可以在/etc/my.cnf文件中的第2行添加以下代码,必须要正确添加以下代码,然后重启mysql服务,可以跳过验证直接进入mysql
skip-grant-tables
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\f7fb37a784e544e797f79c48b2fc31d7\o}4qli3qb4ssxoaz2



------sql语句------ 要进入mysql页面操作的指令
每一条SQL语句都是以';' 结束,在‘;’之前的单词都可以被mysql理解为同一条SQL语句的内容
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\13ecd9faa6c9479a9681bd8d50556cd7\fa8{ir]d9d_c8ik1o~t`y)m.png
show databases; ==>查看所有的库
use +库名;==》进入某个库,才可以对库中的表进行操作
show tables;==》查看当前库中所有的表
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\ccfbd93a8b5a4c3cbb4480ccd214bd64\bwnwbrgdlt

C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\ab8a5dc754d44cc29e79a030034e7797\@zbp)w@63k@~9_$f8gfgzp9.png
create database 新的库名;===》创建 数据库 xx库;
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\a45c85c4b2bd466fb60daa47cac15624\cvz04)r9{uah)w5`ibeccse.png
select database(); ===》查询 当前所使用的库
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\c274266a9c4a448daf2c1b0942843853\(tv6l25w95ceez7l@@f5@y8.png
create table 表名(字段名1 字段格式,字段名2 字段格式,。。。。);===》建表语句
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\e0f693c1ce564b34a5cef379c128847b\bbg_w64g11ph}62(v$9sjnt.png

create table test    #创建表 命名为test
(      #包含着表的基本信息,字段名(列名),字段属性
id int(10) primary key auto_increment,
#id字段 属性为int(10),是primary key,而且是auto_increment
name varchar(20) not null,
#name字段 属性为varchar(20),是not null约束,非空约束
score float(20,2),
#score字段,属性为float(20,2)
phone bigint(20) default 17633338888
#phone字段 属性为bigint(20) 是默认值约束,默认填入17633338888
);
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\255085692db14607b3c3cc6bd0536e60\00m254fix@ua8fxl269a9
数据类型:
int(10) ==》数据宽度为10的整型,整数型,mysql保存数字的数据的一个长度,占4个字节
varchar(20)==》可变长字符串,对应的值是可以为任意的数据(字母,中文、特殊字符,空格等等),插入数据时要使用引号'',在引号''里面写入数据,后面的20表示字符长度,一个字母占一个字符长度,中文utf-8编码占3个字符,GBK编码占2个字符
char==》定长字符串,也是保存字符串,插入数据时要使用引号''

varchar(可变长字符串)和char(定长字符串)的区别:
char固定占磁盘255个字符,varchar最大占2^16次方个字符
char的查询性能会好些,但是不节约资源
varcar的性能差一点,但是节约资源,可以保存0~65535个字符

float(20,2)==》浮点型,保存小数,最大占4个字节,(20,2)表示数据宽度可以保存20,2表示小数点后两位
double ==》浮点型,保存小数,最大占8个字节
bigint(20) ==》大数字,整型,整数型,占8个字节
date ==》保存日期 固定格式 YYYY-MM-DD,插入数据时要使用引号''

常见的约束:
primary key ==》主键约束,一个表中只有一个主键,说明这个字段是这个表的主键,整一列的数据是唯一的,不重复,而且不能为空
auto_increment ==》自增长约束,要结合着主键使用,只能作用于整型数据
not null==》非空约束 必填信息,不能不填
default   ==》默认值约束,如果不对该字段插入值,那么就直接插入默认值

一个字节 0000 0000
4个字节 0000 0000 0000 0000 0000 0000 0000 0000
    1111 1111 1111 1111 1111 1111 1111 1111
int型最大保存的数字范围是-2^31~2^31 = ±2147483647(10位数,超过10位数就使用bigint)


desc +表名; ===》查看表结构

表结构的操作:
alter table==》修改表,改变表的结构
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\e82ee665f43147ecb3868762619a1280\`%mgx1$lyoq`{2mvw5@r%@j.png
alter table test rename test1;==》把test表重命名为test1
alter tabletest1 rename test;==》把test1表重命名为test
alter table test change id sid int(10); ==》把id字段名修改为sid,并去掉自增长约束
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\0c9ff631b3d84bf39db0f6e411f21412\~%m%dmvif9
alter table testchange sid sid int(10) auto_increment;==》改变sid字段,增加自增长约束
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\53671dbbe29a4207b42ced04d0e5d713\sy7]gq0v5%q{v2x3n~d)_r6.png
alter table test add time date;==》对test表增加time字段类型为date型
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\1eee4ec488cb43ad9ac6583c7e39dbdc\qojgbc0xwu%$r~8w@0yna7y.png
alter table test add class int(10) first;==》对test表增加class字段类型为int(10), first表示放在第一位
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\dfb9d8e1201449089e8258089a3b9f37\$0lg5e9~9l_p]t`df{{)pex.png
alter table test add sex varchar(6) after class; ==>增加sex字段类型为varchar(6) 放在class字段后面
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\15713493f07548f8ab7fc591a79652a6\17vha]il$%f
alter table test drop sex; ==》对test表丢弃 sex字段
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\c7d21c5543d545b88ff906a8ab7da6ed\n~r2`u%6b]v%8fgt71(znqn.png
alter table test add(sex varchar(6),age int(4)); ==》对test表 同时增加sex和age字段
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\52593890157d462d9e2b109d55c7aabc\]ga98@053njqkn{5{]iis%k.png
alter table test drop sex,drop age; ==》对test表同时删除sex字段和删除age字段
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\1959585eae9e477e94c0d579c65ce325\){uk%e{s5@s337_3rzb5ldf.png
alter table test modify class varchar(10) after name;==》修改class字段的属性为varchar(10),并放在name字段后面
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\1a88f65ee4f34667bd9ad6c9b509fa9a\ckr$kggt%ahz

*modify和change 都是可以修改表的定义,但是change需要写两次字段名,不是很方便。change的优点是可以修改字段名,modify则不行,只能修改字段属性

创建表,丢弃表
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\d1df094b3ffa4d67b7ac808b97f09185\zt$u(wn5j$v8_od_x{43z)n.png

drop table +表名;==>丢弃表,删除表
drop database +库名;==》丢弃库,删除库


删除主键约束:
alter table test drop primary key;#直接删除会报错
ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key
1,首先要删除自增长约束
alter table test change sid sid int(10);
2,然后才可以删除主键约束
alter table test drop primary key;
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\4de4bf6b8a4f4e419fe30c8479c3716f\e94$f_4h~@c(oynlykf.png
添加主键和自增长约束:用change
alter table test change sid sid int(10) primary key auto_increment;
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\171f9ffa25374d7784b0668a3fc7ba85\ycnvu@%lqxxvzt4xg((8.png

对表中的数据进行操作---增删查改
增 insert into===》测试过程,经常要插入一些测试数据供我们测试去使用

注意:插入数据时,如果字段类型为char、varchar、date型需要加单引号或双引号

插入数据的2种方法:
第一种:
insert into 表名(字段1,字段2,字段3...) values(值1,值2,值3....);===>要求,值和字段要一一对应着
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\ff79d5dae52f40f7b5aa16855f2698fd\@~54}6h`q1j%9{fq6y{bctp.png

C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\de27462f094f46a5a3ce5c30731c018a\_90$~1r9~)pg8uh6u``{406.png

C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\64486c07609146148afe16d224fd95ef\9vnwiq1xf)qxq8n0mcp5q9n.png

C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\a2b84e2b66ea48cc8817cc89ad31f4d7\ma)mgu`(ls@3vv2{~hkkd@4.png

C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\0572176a3b314e3fba2fb1430bc5c3d7\7b9c)7(l$@c6q4oq$4r5j8r.png
第二种:假设表的字段特别多,就不建议使用这种方法
insert into 表名 values(值1,值2,值3....); ===》要求:对表结构要熟悉,因为不写字段名时,插入的值要一一对应着表结构中字段的默认顺序,而且需要对表中所有的字段进行插入值
C:\Users\Administrator\AppData\Local\YNote\data\zhx1020033916@163.com\ba01e58b350c49679cc55f4044b16272\0a9`8ujhb2](hc9qf$(fd5k.png

(重点)
查 select ==》测试过程,我们经常要检查数据库中有没有对应的数据
select * from 表名;===》查询 所有字段 的值 来自于 某个表;ti






页: [1]
查看完整版本: 12.15