找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
数据库
关系型数据库:存储的格式类似excel表格很像
Oracle==收费的只有大公司用,全程是:“甲骨文”公司的一个产品
mysql==开源免费的  也是oracle公司的
sql server ==微软
error 报错的意思

非关系型数据库:
hbase==大数据
Redis==key ,values  键值对形式,缓存型的数据库
mangodb==一个键、一个值

安装客户端(虚拟机)
yum install mysql
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\7c933c70efc3402b96f268530dd16560\clipboard.png
安装服务端(虚拟机)
yum install mysql-server
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\1c735e663175439696d3a0dc11fda793\clipboard.png
查看是否安装了数据库
rpm -qa|grep -i mysql
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\a6bef9aa5b9c425abd160c0a97103164\clipboard.png

mysql  每次使用前后需要启动和关闭
启动:service mysqld start
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\3f8898ba69234c1fb6a63cf871085439\clipboard.png
关闭:service mysqld stop
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\aeadbbf9165241d38fc8832c1ad79594\clipboard.png
查询数据库的状态:service mysqld status
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\cc3527601cc948368996f38159979a21\clipboard.png
重启数据库
service mysqld restart
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\7c08284db3ff4236b59a0177851a168a\clipboard.png
ps:  mysql 后的这个d 是守护进程的意思 daemon

查看进程号
1、查看数据库目前是否开启状态可以看到  service mysald status
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\c3b8579877cf42ca9edfc32b19811d0d\clipboard.png
2、专门查看进程的指令   netstat -nltp
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\77c71f009e674824a9d6b22cfcbca8de\clipboard.png

登录mysal数据库==第一次进入不需要密码  后面上班是肯定要的
mysql -uroot -p
u是用户user的缩写   p是password密码的意思
第一次登录不用密码所以直接再次回车键就可以
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\fc63dcca979b42bfa9ca240b98eff647\clipboard.png
查询数据库中的所有库,里面有三个系统库
show databases;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\396ce4c1bb5e4ccaba3e6e22362d7f46\clipboard.png
这里要加;   是数据库的默认格式
后面删什么都不能删这三个数据库

退出数据库
1、ctrl加c     2、exit
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\4532298259c847eb9e83efdf2baea986\6dvnfo6mn{_]m_5m8vr_t46.png
给数据库加密码,,不能在数据库里面设置
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\852c2622d12349f39d4685377d648be6\clipboard.png
用密码进入数据库
1、mysql -uroot -p  
2、mysql -uroot -p123456(修改完密码后才可以用的方法)
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\3db4875b4cf04dca9c6e25b1fe03802e\clipboard.png
创建一个数据库叫dcs1
create database dcs1;
创建     数据库     名称自定义的
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\e4d37ba93575467083142dfb9c9a7024\clipboard.png
删除数据库dcs1
drop database dcs1;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\6fcec206ff664fc4ac6713b58a62eccf\clipboard.png
!如果密码正确但是进不去数据库
1)编辑vim /etc/my.cnf
2)在socket=/var行下面输入:skip-grant-tables
3)退出编辑模式
4)重启数据库
5)不输入密码进行登录

开始编辑dcs1数据库
先进入 use dcs1(切换或者进入数据库都行)
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\46a1b5944e034f009bb661b568dd87a2\clipboard.png
PS:查询目前在哪个数据库里面
select database();
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\299b15b58b474b66ba704dfc783fbf0d\clipboard.png

在数据库建一个表格
create table test(id int(20)primary key auto_increment,score float(20,2)not null,name varchar(20),phone bigint(20) default 18611112222,time date);
Query OK, 0 rows affected (0.02 sec)

查看上面创建的表结构
desc test;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\6af8f05a515049b788fa84f6be6920a5\clipboard.png
field 字段名称
type 数据类型
Null 是否可以是空
key就是: primary key 主键的意思
default 默认值约束
extra   额外的备注  auto _increment 自增长约束

数据库中常用的数据类型
数值型:(不需要加引号)
int==最大存储值 2147483647(最大是10位)  不保留小数点
bigint ==手机号码都只能用bigint存储                不保留小数点
float ==score|float (20,2),2是精度,代表几位数    保留两位小数点
文本型:(需要加引号)[]
varchar==存字符串,字符位数多一些
char==存字符,单个字符
日期型:(需要加引号)[]
date==”2021-11-30“

数据库中常用的约束有哪些
not null == 非空约束
primary key ==主键约束,里面的值必须是唯一的,不能重复
default ==默认值约束,若不输入值,字段永远是18611112222
auto_increment==自增长约束
foreign key  ==外键约束


【对于表结构的操作】

1、查看当前数据库有多少的表
show tables;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\25b6123182274acebdd4c8bb9034aab7\clipboard.png
2、把表格test表格名字改为test1
alter table test rename testa
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\cf6c69e0c02745b09a728932b136740f\clipboard.png
3、把id字段修改为sid,而且把自增长去掉
alter table test change id sid int(20);
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\96813c21c0a14810b794cd532d518ed4\clipboard.png
3、把sid字段修改为id,而且把自增长约束加上
alter table test change sid id int(20) auto_increment;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\490fa21053974ac289ea6ab8ce33e9c0\clipboard.png
4、添加一个字段班级class到最前面
alter table test add class int(20) first;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\6dee5d12ae5a4b5a80918c34e770c539\clipboard.png
5、添加一个字段性别sex到id的后面
alter table test add sex int(20) after id;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\d0a788a0437441dab758a8dc825873b0\clipboard.png
6、同事添加两个字段,会默认添加到最下面,不能到前面
alter table test add(age1 int(20),age2 int(20));
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\43005f77cd3243e7951a8a763be8d31d\clipboard.png
7、把class调整到id的后面
alter table test modifyclass int(20) after id;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\3ab7452fd37f4fbda47c27315e9f07a6\clipboard.png
8、把sex删除
alter table test drop sex;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\dc82959627e54e4d9e38cf497869f437\clipboard.png
9、同时删除两个字段age1  age2
alter table test drop dag1,drop age2;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\43f34c690ac74c56a5e3f083c6bfd3db\clipboard.png
10、把id列的自增长删除,且不更改字段名称
alter table test change id id int(20);
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\d1fbe208005143ac808e096a66164b72\clipboard.png
11、不改变字段名称id增加自增长
alter table test change id id int(20)auto_increment;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\1e2ca449c0b742d08e2511a390dea5bc\clipboard.png
12、直接删除主键约束会报错,需要先删除自增长
[img=620,0]C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\fa4d8b2284d541be81bb2e968e30b6f0\lo[oz%h85@vq2wo25n)}[5f.png[/img]
想删除主键,先删除自增长,再删除主键,自增长键是结合主键去使用的
alter table test change id id int(20);
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\1f130941adab44d684229516d75f8070\clipboard.png
alter table test drop primary key;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\7eb4fd51ef90493e95295fe154e9e106\clipboard.png

【对于表中数据的操作】
1、单个数据插入,插入五个值
insert into test(id,score,name,phone,time)values(1,89.99,"xiaoliu",18611223311,"2021-11-30");
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\8c8e7b5874be409eb3e9e23cac34fdb3\clipboard.png
第二种方法
insert into test values(2,78.66,"xiaoliu1",18982475616,"2021-11-30");
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\a5566c39f89d4060987f8b6b792921bc\clipboard.png

2、查询表内容,之前desc 是查表结构的
select * from test;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\5f798c281ea146348be7b0d5061e43a3\clipboard.png

3、多个数据插入第一种方式
insert into test(id,score,name,phone,time)values(3,66.666,"xiaoliu2",13688889999,"2021-11-30"),(4,78.89,"xiaoliu3",13666668888,"2021-11-30");
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\62e7b7e8cc574ebe80298b909ba39d40\clipboard.png
多个数据插入第二种方式
insert into test values(5,100,"xiaoliu4",13677778888,"2021-11-30"),(6,99.99,"xiaoliu5",15699990000,"2021-11-30"),(7,68.99,"xiaoliu6",13877665678,"2021-11-30");
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\6e45eda116e94cac929b73514f8c8d6a\clipboard.png
4、指定在id栏加数据
insert into test(id)values(8);  0不是null,0是数值
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\d04b01f0a32c4840974095566f33b27a\clipboard.png
补充:delete from test where id=0;
删除id为0 的内容行

5、虽然只添加了数据分数栏,但是id有自动增加,是因为自增长
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\c4e9b37bc8c146029901c21d1336b4ba\clipboard.png
6、把phone的约束改为10位数的那种int,且不为空,下面就变了
alter table test change phone phone int(20) not null;
C:\Users\Administrator\AppData\Local\YNote\data\weixinobU7Vjh6e9H8aeHgMdnuo1oJuNj4\fcc8678974d14212a5447d3d851a0a48\clipboard.png

分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册