关系型数据库:
oracle 收费,大型公司,全称‘甲骨文’公司,Oracle是他的一个产品
mysql 开源,免费,也是Oracle公司的
sql server 微软
存储的格式跟我们excel表格很像,存储数据非常友好
非关系型数据库:
1、hbase ==大数据
2、redis==key,values,键值对,缓存型数据库
3、mangodb==一个键,一个值
安装mysql的数据库
1、yum install mysql === 客户端
2、yum install mysql-server === 服务端
3、service mysqld start 启动数据库 mysql后面的d代表的是守护进程,原型为daemon
4、service mysqld stop === 关闭数据库
5、service mysqld erstart === 重启数据库
6、rpm -qa|grep -i mysql === 查询是否安装了mysql数据库
7、service mysqld status === 查询mysql数据库的状态
8、mysqld (pid 3085) is running... === 查询数据库的进程号
9、netstat ntlp === 查看进程(也可以查看进程号)
登录mysql数据库:
1、mysql -uroot -p === 进入数据库 (root是用户名)
第一次进入数据库时默认密码为:123456 (输入的密码不显示)
enter password:第一次进入数据库,进入时不需要密码
-u 代表是用户的意思user
默认mysql有个用户是root
2、show databases; 查询数据库的所有库
系统库不能删除
3、exit:退出数据库,ctrl+c
4、mysqladmin -uroot password "123456" 设置修改数据库密码
5、mysql -uroot -p123456 :进入数据库并且不用输密码(密码为123456)
6、create database dcs65; :创建dcs65库
cerate database dcs65; :创建dcs65库
创建以经存在的库
7、drop database dcs65 === 删除数据库dcs65
8、drop database if exists dcs65 === 删除数据库dcs65(是否存在都不会报错)
9、use dcs65 切换进入dcs65 库
10、select database(); 查询当前在哪个数据库里面
11、create table test(id int(20) primary key auto_increment,score float(20,2)not null,name varchar(20),phone bigint(20)default 15377778888,time date); 创建表格语句
12、desc tesy;===查看表格
13、表结构:
Field===字段
Type===数据类型
Null===是否可为空
Key===primary Key主键
Default===默认值约束
Extra===额外的备注,auto_increment自增长约束
数据库中常用的数据类型:
int===最大的储存值为2147483647
bigint===长整型,手机号码只能用bigint来存储
float===浮点型,score(20,2),2代表是精度文本型【varchar和char存的数据需要加单引号或者双引号】
文本型:(varchar和char存的数据需要添加单引号或者双引号)
varchar ===字符串
char ===字符,单个的字符
日期型:(data存的数据需要添加单引号或者双引号)
data ==='2021-08-07'
数据库中常见的约束:
not null ===非空约束
primary key ===主键约束,里面的值是唯一的,不能重复
default ===默认值约束,若不输入值,字段永远是15377778888
auto_increment ==自增长约束,当前的基础上+1
自增长约束配合主键约束一起使用
foreign key ==外键约束
修改表结构:
alter table 表名 ==用来修改表结构
alter table test rename tesr1; ==把test表的名字改为test1
alter table test1 change id sid int(20); ==把id字段改为sid且去掉自增长
alter table test1 change sid id int(20)auto_incrment; ==把sid字段名改为id且增加自增长
show tables; 查看当前库中所以表格
alter table test1 add class int(20) first;===添加一个class字段放在最前面
alter table test1 add sex int(20) after id;===添加sex字段在id字段后面
alter table test1 add(age1 int(20),age2 int(20));===添加age1,age2字段到test1表格中
alter table test1 modify class int(20) after id;===把class字段放到id字段的后面
alter table test1 drop sex;===删除sex字段
alter table test1 drop age1,drop age2;===删除age1,age2字段
alter table test1 change id id int(20);===删除不改变id字段名,去除自增长
alter table test1 drop primary key;===删除主键约束先删除自增长约束,后删除alter table test1 change id id int(20) primary key auto_increment;===不改变字段名的情况下,添加主键约束和自增长约束
drop table test1;===删除表格
对于表中数据的操作:
增i加、insert into+表明
单个数据的插入:
insert into test(id,score,name,phone,time)values(1,99,'xiaoliu',13566668888,'2021-08-07'); (方法一)单条数据插入,对应5个值
insert into test values(2,88,'xiaoxiao',13788889999,'2021-08-08'); (方法二单条数据插入
select * from test; 查询表中所有内容
insert into test values(5,67,'xiao2',13899990000,'2021-03-09'),(6,68,'xiao5',15688880000,'2021-09-09'),(7,88,'xiao6',13788999999,'2021-09-08'); 多条数据插入
|
|