请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
  • 便民服务
  • 关注我们
  • 社区新手
本帖最后由 武汉9期-程俊峰 于 2021-11-16 19:51 编辑

数据库:数据库分关系型数据库和非关系型数据库
关系型数据库:依据关系模型创建的数据库,把数据保存在不同的表中,表与表存在着某些关系
                        oracle==》收费
                        mysql==》开源,免费
                        sql server==》微软
非关系型数据库:通常数据以对象的形式存储在数据库中,不固定结构,例如列模型,键值对模型来存储数据
                           hbase==》大数据
                           redis==》做数据缓存,提高服务器数据查新性能

关系型数据库特点:安全,保持数据的一致性,实现对表与表复杂的数据查询
非关系型数据库特点:效率高,容易扩展,使用更加灵活

Mysql特点:
1.体积小,安装简单,维护成本低
2.开源,免费
3.使用C++编写
4.支持多系统

rpm -aq|grep mysql==》查询安装的数据库
rpm -ev  + 文件名称 --nodeps  ==》移除已安装的数据库
yum install -y mysql==》安装数据库客户端
yum install -y mysql-server==》安装数据库服务器
service mysqld start:启动mysql数据库

service mysqld restart:重启mysql数据库
service mysqld stop:停止mysql数据库
service mysqld status:查看数据库状态
mysqld:mysql后面的d代表的时一个守护进程

登录mysql数据库,第一次不需要密码==》mysql -uroot -p
-u代表用户  user的意思;root用户;-p代表密码,password的意思

ctrl+c==》退出mysql数据库

mysqladmin -uroot password "123456"==》修改用户密码(退出到linux操作界面执行)

mysql -uroot -p===》进入mysql数据库
password: 输入密码不会显示
mysql -uroot -p123456===》直接进入数据库
XJS5Y@RCD{VN]A_{89]ZVZM.png

create database dcs9;==》新建一个dcs9的数据库
show databases;==》查看所有的库
mysql> use dcs9;进入dcs9这个数据库中
mysql> select database();查看当前所在数据库名称
drop database dcs9;==》删除dcs9这个数据库
show tables==》查看当前所在库里面所有的表

数据类型:
int  ==》整形,最大存储值为2147483647
bigint  ==》长整型,存储手机号等
varchar  ==》存字符串(存的数据需要加单引号或双引号)
date  ==》时间 如:“2021-11-16”
float  ==》浮点型,小数
int(数字)表示字符显示宽度

数据库中常见的约束有哪些?
primary key ==》主键约束,字段的值必须是唯一的不能重复
auto_increment  ==》自增长约束
not null ==》非空约束
default  ==》默认值约束
foreign key ==》外键约束
desc tb_user;查看表结构
mysql> alter table test modify class int(5)after phone;==》调整class字段放到phone后面
查看表结构--desc+表名(显示字段名称、数据类型、约束、备注)
修改表名--alter table +表名 rename + 新表名
修改表字段--alter table +表名 change +原字段名 +新字段名 数据类型,约束
添加表字段并放到第一个字段前--alter table +表名 add +字段名 数据类型 约束 first
添加表字段,并放到某个字段后--alter table +表名 add +字段名 数据类型 约束 after +字段名
同时添加两个字段,默认添加到字段最后--alter table +表名 add(字段1 数据类型,字段2 数据类型)
删除表字段--alter table +表名 drop + 字段
删除表俩个字段--alter table +表名 drop 字段1,字段2
修改主键id为自增长--alter table +表名 change 字段名 字段名 数据类型 auto_increment
删除表--drop table +表名

【对表数据的操作】

增加:
insert into test(id,name,phone,class,time)values(1,"xiaocheng",18888888888,1003,"2021-11-16"); ==》给每个字段添加对应的值
insert into test(name)values("xiaozhen"); ==>只插入name字段值
insert into test(name)values("xiaofu"),("xiaozhou"),("xiaoyang");==》插入多条name字段值
0不等于null, null指的是空的属性, 0是代表是一个值
id字段对应的值会自动加1,因为设置了自增长约束

【对表数据的操作】
增加:
insert into test(id,name,phone,class,time)values(1,"xiaocheng",18888888888,1003,"2021-11-16"); ==》给每个字段添加对应的值
insert into test(name)values("xiaozhen"); ==>只插入name字段值
insert into test(name)values("xiaofu"),("xiaozhou"),("xiaoyang");==》插入多条name字段值
0不等于null, null指的是空的属性, 0是代表是一个值
id字段对应的值会自动加1,因为设置了自增长约束
查:
select * from  表名;
select * from test; ==》查询所有数据,*号代表所有
select * from  test where name="xiaocheng"; ==》查询name为xiaocheng的所有数据
select phone from  test where name="xiaocheng"; ==》查询单个字段
select phone,class from  test where name="xiaocheng"; ==》查询多个字段
改:
update test set phone=13522222222 where id=4; ==》修改id等于4的数据
update test set phone=13566666666 where id>4;==》修改id大于4的数据
删:
delete from test where id=6; ==》删除id等于6的数据
delete from test; ==>删除全表数据
drop table test;==》删除表数据和表结构
truncate test;==》删除表数据


分享至 : QQ空间
收藏

0 个回复

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