Revisión de la base de datos

conceptos básicos

1. Concepto DBMS

  • Base de datos (DB) Una
    base de datos es una colección de datos relacionados que se almacena en la computadora durante mucho tiempo, se organiza, se administra de manera uniforme y se puede compartir
    (de hecho, es el almacenamiento de datos)
  • Un sistema de administración de bases de datos (DBMS) es
    un software para administrar bases de datos y proporciona a los usuarios métodos para acceder a la base de datos, incluida la creación, consulta, actualización y control de varios datos de la base de datos. Ubicado entre el usuario y el SO.
    (De hecho, es para operar la base de datos)
  • Sistema de base de datos (DBS)
    DBS es un sistema compuesto por hardware, software y recursos de datos que realiza el almacenamiento organizado y dinámico de grandes cantidades de datos asociados y facilita el acceso de múltiples usuarios.
    (El concepto más amplio, que generalmente incluye DB, DBMS, DBA, etc.)

2. La diferencia entre mesa y vista

Tabla: Es la tabla de datos, que es la relación real en la base de datos.
Vista: Es una vista, que es una tabla derivada de una o varias tablas básicas. Aunque también es una forma relacional, no existe en la propia base de datos. Solo hay una definición sin datos, que es una relación virtual.
Concordancia: todo es una forma de relación

Diferencia: la tabla de datos está realmente almacenada en la base de datos, que es una relación real.
La vista es solo una relación virtual, no se almacenan datos.

3. Urgencias

El diagrama ER se usa para describir la relación entre cosas.
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

4. El modelo de estructura de tres niveles de la base de datos


  • La base de datos bajo el concepto de usuario del modo externo (modo secundario, modo de usuario) es la interfaz entre el usuario y la base de datos.
    Un sistema de base de datos puede tener múltiples modos externos

  • El modo conceptual (modo, modo lógico)
    describe la base de datos global, una vista de datos compartida por todos los usuarios.
    Un sistema de base de datos solo puede tener un modelo conceptual.

  • El modo interno (modo de almacenamiento)
    describe la estructura física y el modo de almacenamiento de los datos en la base de datos, y es la representación de los datos dentro de la base de datos.
    Un sistema de base de datos solo puede tener un modo interno.

5. Limitaciones de los datos del modelo relacional

  • Restricciones de la integridad de la entidad La integridad de la
    entidad se utiliza para garantizar que cada tupla en la base de datos relacional sea distinguible y única.
    (En realidad, la clave principal)
  • Restricciones de integridad
    referencial Los requisitos de integridad referencial no permiten referencias a entidades inexistentes en las relaciones.
    (En realidad, es una clave externa)
  • Reglas de integridad definidas por el usuario La integridad definida por el
    usuario es una restricción para una base de datos relacional específica, que refleja los requisitos semánticos que deben cumplir los datos involucrados en una aplicación específica.
    (De hecho, es para establecer el rango de valores, no nulos y otras regulaciones)

6. Varias operaciones básicas del álgebra relacional

Selección, proyección, unión, diferencia, producto cartesiano

  • Seleccionar
    seleccionar línea legal
  • Proyección
    seleccionar columnas legales
  • Y
    las mismas propiedades combinaron dos tablas en todas las filas y eliminaron filas duplicadas
  • Diferencia
    Dos tablas con los mismos atributos R, S
    RS calcula una tabla compuesta por filas que pertenecen a R pero que no pertenecen a S
  • Producto cartesiano
    Si R tiene m tuplas y S tiene n tuplas, entonces R × S tiene m × n tuplas
    Inserte la descripción de la imagen aquí
    Inserte la descripción de la imagen aquí

7. El ciclo de vida de la base de datos

  • Etapa de planificación
  • Etapa de análisis de demanda
  • Etapa de diseño conceptual
  • Etapa de diseño lógico
  • Etapa de diseño físico
  • Fase de realización
  • Fase de operación y mantenimiento

8. Cinco niveles de medidas de seguridad para proteger la base de datos

  • Nivel ambiental
  • Nivel de personal
  • Nivel de SO
  • Nivel de red
  • Nivel DBS

9. Varias formas correspondientes entre entidades

1 : 1
1 : n
n : m

10. El concepto de superclave, clave primaria, clave candidata

Superclave: un conjunto de atributos que pueden representar de forma única una tupla en la relación
(una superclave es una colección de atributos, siempre que el conjunto contenga atributos que puedan identificar de forma única una tupla).
Clave candidata: una superclave que no contiene atributos redundantes.

Clave principal: seleccione la clave que es el identificador de tupla de las claves candidatas

Diseño de comando

1. Crea una base de datos

create database datebaseName;

2. Crea una tabla

por ejemplo

create table SC(
Sno char(10) not null,
Cno char(5) not null,
Degree decimal(5,1),
foreign key (Sno) 
references Student (Sno),
foreign key (Cno)
references Course (Cno) on delete restrict,
check (Degree >= 0 and Degree <= 100 ));

3. Modificar la estructura de la tabla.

#添加属性
alter table <表名> add <属性名><类型>;
#删除已有属性
alter table <表名> drop<属性名>;
#属性重命名
alter table <表名> change <原属性名> <新属性名> <新的类型>;
#修改属性的数据类型
alter table <表名> modify <属性名> <新的类型>;
#删除表
drop table <表名>;
#补充主键定义
alter table <表名> add primary key(<属性名表>);
#撤销主键定义
alter table <表名> drop primary key;
#补充定义外键
alter table <表名> 
add foreign key <属性> references <表名>(<属性>);
#撤消外键定义
alter table <表名> drop foreign key <外键名>;

4. Actualización del registro de la tabla

# 插入元组
insert into <表名> [(<属性列1>[, <属性列2 >)]
values (<常量1> [, <常量>]  ......   );
# 插入子查询的结果
insert into <表名>  [(<属性列1> [, <属性列2>......])]
子查询;
# 删除数据
delete from <表名>
[where <条件>];
#修改数据
update <表名>
set <列名>=<表达式>[,<列名>=<表达式>]......
    [where <条件>];

5. Creación de consultas

#查找格式
select [distinct] <属性列表>
from <表名/视图名>
[where <条件>]
[group by <分组列表名> [having <组合条件>]]
[order by <排序列名> [asc | desc]]

#集函数
count([distinct|all] *) #计算元组个数
count([distinct|all] <列名>) #计算某一列值个数,空值也计算
sum([distinct|all] <列名>) #计算某一列总和
avg([distinct|all] <列名>) #计算某一列平均值
max([distinct|all] <列名>) #计算某一列最大值
min([distinct|all] <列名>) #计算某一列最小值
#having中可以使用集函数作为条件,having不能单独出现,只能和group by一起出现

Para obtener más ejemplos de consultas, consulte los ejercicios prácticos 3 y 4

## 下面是几个例子

# 查询指定列
select Sname, Ssex, Sbirthday from student
where Speciality='电子商务';
# 查询全部列
select * from student
where(Ssex = '女' and 2020 - year(Sbirthday)>20 );
# 使用别名改变列标题
select sdept as '系', count(Sno) as '人数'
from student
group by sdept;

6. Ver creación

# 视图创建语句
create view <视图名>  [(<列名>  [,<列名>]......)]
as <子查询>
[with check option];
# 删除视图
drop view if exists <视图名>;

7. La creación de un disparador simple

#只有表才有触发器,视图不支持触发器
create
    [definer = { user | current_user }]
    trigger trigger_name
    trigger_time trigger_event
    on tbl_name for each row
    trigger_body
    #举个例子
create trigger trigger_student_count_insert
after insert on student_info for each row
update student_count #表名
set student_count=student_count+1;

Supongo que te gusta

Origin blog.csdn.net/mwl000000/article/details/108541502
Recomendado
Clasificación