找回密码
 立即注册

推荐阅读

  • 便民服务
  • 关注我们
  • 社区新手
第 7 讲   mysql 数据库



1、数据库的定义:是存放数据的电子仓库  ==》例子:教室是一个仓库(数据库)==》
里面的桌子可以理解为表==》表里面存储数据

2、关系型数据库:
依据关系模型创建的数据库,把数据保存在不同的表中,表
与表存在着某些关系。

3、非关系型数据库:非关系型数据库也叫nosql数据库,全称not only sql。通常
数据以对象的形式存储在数据库中,不固定结构,例如列模
型,键值对模型。


4、关系型数据库特点
1.安全
2.保持数据的一致性
3.实现对表与表进行复杂的数据查询


5、非关系型数据库特点
1.效率高
2.容易扩展
3.使用更加灵活


6、关系型数据库有哪些
1.db2
2.oracle    ==》收费  金融公司
3.mysql     ==》开源 免费 体积小
4.sql server ==》微软公司



7、非关系型数据库有哪些
1.hbase(列模型)   ==》大数据
2.redis(键值对模型)  ==》缓存  ==》中间件
3.mongodb(文档类模型) ==》文档类模型

8、MySQL 数据库的安装
yum install MySQL     ==》安装数据库的客户端

yum install mysql-server  ==》安装MySQL数据库的服务端

rpm -qa|grep  -i mysql  ==》查看是否安装了MySQL数据库

9、MySQL 数据库的操作
service  mysqld status  ==》查看数据库的状态(d ==》daemon  守护的进程)

service mysqld  start   ==》启动数据库

service mysqld  stop    ==》关闭数据库

service mysqld  restart  ==》重启数据库

10、登录数据库   ==》第一次登录数据库不需要密码
[root@localhost /]# mysql -u root -p
Enter password: 不需要密码  ==》按enter键
-u 表示user  root 用户
-p 表示password  密码

mysql>exit;     ==》退出数据库  也可以按ctrl +c   【注意sql语句后需要加英文分号】

[root@localhost /]mysqladmin -uroot password "123456"   ==》只能修改初始密码123456

11、[root@localhost /]# mysql -u root -p123456  ==》登录数据库

[root@localhost /]# mysql -u root -p
Enter password: 123456
以上两种登录方式

12、mysql>use mysql;      ==》进入到MySQL数据库

13、mysql>show databases;   ==》展示所有的库

14、create database +库名
mysql>create databasse dcs11  ==》创建一个名为dcs11的数据库

15、drop database dcs11;   ==》删除dcs11这个库

16、select database();  ==》当前在那个库(dcs11)

17、show tables;       ==》展示dcs11这个库里面所有的表

18、create table +表名(
字段1名称,数据类型, 约束 ,
字段2名称,数据类型,约束,
字段3名称,数据类型,约束,

create table tab11(id int(10) primary key auto_increment,score float(10,2) not null,
name varchar(10),phone bigint(10) default 13977778888,time date);

desc tab11;    ==》查看表结构(desc ==》全称description 描述)
+-------+-------------+------+-----+-------------+----------------+
| Field | Type        | Null | Key | Default     | Extra          |
+-------+-------------+------+-----+-------------+----------------+
| id    | int(10)     | NO   | PRI | NULL        | auto_increment |
| score | float(10,2) | NO   |     | NULL        |                |
| name  | varchar(10) | YES  |     | NULL        |                |
| phone | bigint(10)  | YES  |     | 13977778888 |                |
| time  | date        | YES  |     | NULL        |                |
+-------+-------------+------+-----+-------------+----------------+

field   ==》字段
type    ==》数据类型
key     ==》primary key 主键  一个表只能有一个主键,好比身份证
default  ==》默认值   如果不给它值,就使用默认值
extra    ==》额外的备注


数据库当中的数据类型

数值型
int    ==》整型  最大存储的值 2147483647
bigint  ==》整型  超过int就是用bigint
float   ==》浮点型  float(10,2) 整数部分和小数部分加以来是10位,2精确到2位小数点

文本型  (这两种存储的值需要加单引号或者双引号)
varchar:字符串
char:字符串
区别:
1)char是固定长度的  varchar是可变长度
2)假设char(10)和varchar(10) 同样存储‘abc’ 对于char用个字节,剩下的7个
用空格不上,varchar只会占用3个字节,剩下不会用空格不上
3)char 效率要比varchar高
4)varchar 节省空间

日期型(这两种存储的值需要加单引号或者双引号)
date  ==>'2022-10-17'


数据库的约束
约束用于对表中字段进行限制,保证表中数据的正确性和唯一性
约束类型
1 )primary key 主键约束
说明:非空,唯一,用于唯一标识对应的记录。类似身份证。

2 )foreign key 外键约束
说明:用于表与表建立关系模型,使表与表紧密的结合起来。

3 )not null 非空约束

4 )default 默认值约束
说明:默认给字段指定默认值

5 )auto_increment 自增约束   ==》只能和主键一起使用
说明:作用在整数类型,字段默认从1开始自增,不给id值,会默认在上一个id的基础上加1


19、修改表结构


1.查看表结构
desc +表名
显示字段名称,数据类型,约束,备注
desc tab11;    ==》查看tab11这个表的结构

2.修改表名
alter table +表名 rename + 新表名
alter table tab11 rename tab12  ==》把tab11名称改为tab12

3.修改表字段
alter table +表名 change +原字段名 +新字段名 数据类型,约束
alter table tab11  change id sid int(10);  ==》把id字段改为sid并且取消自增长
alter table tab11 change sid  id int(10) auto_increment; ==》把sid 改为id加上自增长

4.添加表字段,并放到第一个字段前
alter table +表名 add +字段名 数据类型 约束 first
alter table tab11 add class int(10) first;  ==》添加一个字段放在最前面

5.添加表字段,并放到某个字段后
alter table +表名 add +字段名 数据类型 约束 after +字段名
alter table tab11 add sex int(10) after id;  ==》添加一个字段sex放在id的后面

6.同时添加两个字段,默认添加到字段最后
alter table +表名 add(字段1 数据类型,字段2 数据类型)
alter table  tab11 add(age1 int(10),age2 int(10));  ==》同时添加两个字段age1 age2

7. 删除表字段
alter table +表名 drop + 字段
alter table tab11 drop class;==》把class字段删除

8.删除表两个字段
alter table +表名 drop 字段1,drop 字段2
alter table tab11 drop age1,drop age2;==》同时删除两个字段age1 age2

9.修改主键id为自增长 alter table +表名 change +字段名 数据类型 auto_increment
alter table tab11 change id id int(10) auto_increment;==》不修改id字段增加自增长

10.删除主键
alter table tab11 change id id int(10); ==》先删除自增长
alter table tab drop primary key;  ==》删除主键

11.alter table tab11 change id id int(10) primary key auto_incerment;  ==》同时增加主键和自增长

10.删除表drop table +表名
drop table tab11; ==》删除tab11这个表




20、数据库增删改查
1)增加
单条数据插入
insert into tab11(id,score,name,phone,time)values(1,66.88,'xiaoduan',13988886666,'2022-5-31');
insert into tab11 values(1,88.66,'xiaoliu',13466668888,'2022-5-31');







4)查
select * from tab11;  ==》查询tab11这个表的全部数据




分享至 : QQ空间
收藏

0 个回复

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