mysql数据库第一天学习的内容笔记
关系型数据库:
Oracle----收费,大型公司,全程是“甲骨文”公司,oracle是他的一个产品
mysql》开源,免费,也是oracle公司 (平时用的)
sql server》微软
存储的格式跟我们excel表格很像,存储数据非常友好
非关系型数据库
hbase--》大数据
redis》key,values ,键值对,缓存型数据库
manggodb》一个键,一个值
输入mysql语句所有特殊符号需在英文输入法来输入
安装mysql数据库:
yum install mysql ==》客户端
yum install mysql-server ==》服务端 |:管道号
service mysqld start ==》启动数据库,mysql后面的d代表的是一个守护进程,daemon。。service(服务)
service mysqld stop ==》关闭数据库
service mysqld restart ==》重启动数据库
rpm -qa|grep -i mysql ==》查询是否安装了mysql数据库
service mysqld status ==》查看数据库状态
mysqld (pid 3395) is running... :mysql的状态号 pid 3395
netstat -ntlp:查看所有进程
mysql -uroot -p:进入数据库令
Enter password: 第一次安装数据库,进入不需要密码
-u:代表用户user的意思,root是用户
-p:代表是密码password的意思
默认mysql有个用户是root
show databases; 代表查询mysql所有库
mysql>exit :退出知识库 -ctrl+c也是退出
mysqladmin -uroot password "123456" :设置修改数据库密码
mysql -uroot -p123456 进入数据库直接输入密码,无需再次输入
create database dcs65; --:创建数据库全语法
create database if not exists dcs65; =创建数据库全语法,不管他是否存在都不会报错
drop database dcs65; =删除dcs65库
drop database if exists dcs65; ==删除dcs65,不管是否存在都不会报错
use dcs65; ==切换或进入dcs65库
select database(); 查看当前进入到那个数据库里面
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); ==:创建表格语句
dese test; ===查看表结构
表结构:
field=字段
Type=数据类型
Null=是否可以为空
key=primary key 主键约束
Default==默认值约束
Extra==额外的备注,auto_increment 自增长约束
数据库中常用的数据类型:
int==》最大的存储值为2147483647(最大的存储是10位)
bigint==》长整型,手机号码只能用bigint来存储
float==》浮点型,score(20,2),2代表是精度
文本型:【varchar 和char存的数据需要加单引号或者双引号】
varchar===:字符串
日期型:【data存的数据需要加单引号或者双引号】
data==》‘2021-08-07’
数据库中常见的约束:
not null==》非空约束
primary key=》主键约束,里面的值是唯一的,不能重复
default ==:默认值约束,若不输入值,字段永远都是 15377778888
auto_increment==:外键约束
修改表结构:
alter table 表名== 用来修改表结构
alter table test rename test1;==》把test表的名字改为test1
alter table test1 change id sid int(20); ==》把id字段改为sid且去掉自增长 注意每次命令结束后都需加个英文键盘的”;“号
alter table test1 change sid id int(20)auto_increment; ==》把sid字段名改为id且增加自增长
alter table test1 add class int(20)after id; ==》添加一个class字段放在最前面
show tables: ==》查询当前库中所有表格
alter table test1 add sex int(20) after id; ==》添加sex字段在id字段的后面
alter table tet1 add(age1 int(20) ,age2 int(20); ==》添加age1,age2到test表格中,一次型添加两个字段
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 teble test1; ==》:删除表格
【对于表中数据的操作】
增加==》 insert into + 表名
单个数据的插入第一种方法:
insert into test(id,score,name,phone,time)values(1,99,'xiaoliu',13566668888,'2021-08-07'); ==》有5个字段,有5个值
insert into test values(2,88,'xiaoxiao',13788889999,'2021-08-08'); ==》单个数据的插入第二种方法
select * from test; ==》查询表中所有内容
insert into test(id,score,name,phone,time)values(3,78.123,'xiaoxiao',13677770000,'2021-08-08'),(4,66,'xiao1',13578988879,'2021-08-09'); ==》往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');
==》往test表格中插入3条数据,多个数据插入的第二种方法
再次填写--:create table test(id int(20)primary key auto_increment,score float(20,2),name varchar(20),phone bigint(20) default 15377778888,time date); ==》创表语句
|