9 SQL práctica de trabajo de base de datos 6 - INSERT / UPDATE / DELETE / NULL / VISTA

3.5.1 Insertar datos
de dos tipos de modo de datos insertos

  • Insertar tupla
  • Insertar resultados sub-consulta
    pueden insertar varias tuplas

Insertar tupla

INSERT INTO <表名> [(<属性列1>[,<属性列2 >…)]
VALUES (<常量1> [,<常量2>]… );

[Ejemplo 3.72] para cada departamento, se encontró que la edad promedio de los estudiantes, y los resultados se almacenan en la base de datos

  CREATE  TABLE  Dept_age
  ( Sdept     CHAR(15)                     
  Avg_age SMALLINT);       

  INSERT
  INTO  Dept_age(Sdept,Avg_age)
  SELECT  Sdept,AVG(Sage)
  FROM     Student
  GROUP BY Sdept;

Cuando la ejecución de la instrucción de inserción RDBMS comprueba automáticamente el insertada tupla destruir las reglas de integridad definidos en la tabla

  • la integridad de entidad
  • La integridad referencial
  • integridad definido por el usuario

3.5.2 Modificar datos

   UPDATE  <表名>
    SET  <列名>=<表达式>[,<列名>=<表达式>]…
    [WHERE <条件>];

Función de
modificar las condiciones de la cláusula WHERE que cumplen con la tabla especificada tuplas
SET cláusula dada <expresión> sustituido por las correspondientes columnas de atributos
si DONDE se omite la cláusula, según todas las tuplas para modificar la tabla

Existen tres tipos de modificaciones

  • La modificación de los valores de una tupla
  • Modificar el valor de la pluralidad de tuplas
  • instrucciones de modificación de la consulta Correa

1. Modificar los valores de una tupla
[Ejemplo 3.73] 201 215 121 estudiantes de edad a 22 años

 UPDATE  Student
 SET Sage=22
 WHERE  Sno=' 201215121 '; 

2. Modificar los valores de la pluralidad de tuplas
[Ejemplo 3.74] estudiantes se incrementará en 1 año de edad.

UPDATE Student
SET Sage= Sage+1;

3. modificar las consultas de cinta frase
[Ejemplo 3.75] Departamento de Ciencias de la Computación todos los estudiantes de los grados cero.

UPDATE SC
SET     Grade=0
WHERE Sno  IN
   SELETE Sno
   FROM     Student
   WHERE  Sdept= 'CS' );

RDBMS en la ejecución de las instrucciones de modificación comprobarán si corregir las reglas de integridad de entidad operativa se define socavan la integridad de la tabla
de código principal no se puede modificar la integridad definida por el usuario

3.5.3 datos de borrado

  DELETE
  FROM     <表名>
  [WHERE <条件>];

Función
para borrar la tabla especificada que satisfacen la cláusula DONDE condiciones tupla
en la cláusula WHERE
tuplas que debe ser suprimido por defecto se comprometió a eliminar todas las tuplas de la tabla, la tabla está todavía definido diccionario

Existen tres tipos de formas de eliminar

  • Eliminar el valor de una tupla
  • Eliminar tuplas de valores múltiples
  • instrucción de eliminación de la correa de consulta

1. Eliminar el valor de una tupla
[Ejemplo 3.76] número de estudiante de borrado de registros de estudiantes 201,215,128.

DELETE
 FROM Student
 WHERE Sno= 201215128 ';

2. Eliminar el valor de una pluralidad de tuplas
[Ejemplo 3.77] para borrar todos los registros de la inscripción de los estudiantes.

DELETE
FROM SC

3. La caída de la correa de consulta comunicado
[3,78 casos] Departamento de Ciencias de registro informático de golf borrar todos los estudiantes.

DELETE
FROM  SC
WHERE  Sno  IN
(SELECT  Sno
FROM   Student
 WHERE  Sdept= 'CS') ;

[Ejemplo 3.79] SC insertado en una lista de tuplas, el número de estudiante es "201215126", número de curso es "1", el resultado es nulo.

 INSERT INTO SC(Sno,Cno,Grade)
 VALUES('201215126 ','1',NULL);  

o

 INSERT INTO SC(Sno,Cno)
 VALUES(' 201215126 ','1');         

[Ejemplo 3.80] El número Tabla de alumnos estudiantes de secundaria basada "201215200" estudiante pertenece a un valor nulo.

UPDATE Student
SET Sdept = NULL
WHERE Sno='201215200';

[Ejemplo 3.81] para averiguar a través de la Tabla de alumnos de la información del estudiante que falta de datos

SELECT  *
FROM Student
WHERE Sname IS NULL OR Ssex IS NULL OR Sage IS NULL OR Sdept IS NULL;

[Ejemplo 3.82] para encontrar el número de cursos electivos 1 estudiante que ha fallado.

SELECT Sno
FROM SC
WHERE Grade < 60 AND Cno='1';

[Ejemplo 3.83] estudiantes que no elegir cursos electivos No. 1 y estudiantes ausentes. SELECT Sno

FROM SC
WHERE Grade < 60 AND Cno='1'
UNION
SELECT Sno
FROM SC
WHERE Grade IS NULL AND Cno='1'

o

SELECT Sno
FROM SC
WHERE Cno='1' AND (Grade<60 OR Grade IS NULL);

Establecimiento de vista

   CREATE  VIEW 
   <视图名>  [(<列名>  [,<列名>]…)]
   AS  <子查询>
  [WITH  CHECK  OPTION];

[Ejemplo 3.84] vista la información del estudiante establecida.

    CREATE VIEW IS_Student
    AS 
    SELECT Sno,Sname,Sage
    FROM     Student
    WHERE  Sdept= 'IS';

[Ejemplo 3.85] Ver Establecimiento del estudiante información y modificar los requisitos y todavía asegurar que la información de los estudiantes vista del sistema sólo la operación de inserción.

CREATE VIEW IS_Student
AS 
SELECT Sno,Sname,Sage
FROM  Student
WHERE  Sdept= 'IS'
WITH CHECK OPTION;

[Ejemplo 3.86] establecer un departamento de información inscrito estudiantes No. 1 vista curso (incluyendo el número, nombre, resultados).

CREATE VIEW IS_S1(Sno,Sname,Grade)
AS 
SELECT Student.Sno,Sname,Grade
FROM  Student,SC
WHERE  Sdept= 'IS' AND
Student.Sno=SC.Sno AND
SC.Cno= '1';

[Ejemplo 3.87] establecer un sistema de información No. 1 cursos electivos y rendimiento de los estudiantes en vista de 90 puntos o más.

CREATE VIEW IS_S2
AS
 SELECT Sno,Sname,Grade
 FROM  IS_S1
 WHERE  Grade>=90;

[Ejemplo 3.88] definir un reflejo del año de nacimiento del estudiante de vista.

CREATE  VIEW BT_S(Sno,Sname,Sbirth)
AS 
SELECT Sno,Sname,2014-Sage
FROM  Student;

[Ejemplo 3.89] El número de estudiantes de aprendizaje y la puntuación media se define como una vista

 CREATE  VIEW S_G(Sno,Gavg)
 AS  
 SELECT Sno,AVG(Grade)
 FROM  SC
 GROUP BY Sno;

[Ejemplo 3.90] la tabla de Student registra toda la vista chicas se define como una

  CREATE VIEW F_Student(F_Sno,name,sex,age,dept)
  AS
  SELECT  *                   
  FROM  Student
  WHERE Ssex=‘女’;
 

[Ejemplo 3.91] y vista delete BT_S IS_S1

DROP VIEW BT_S;	/*成功执行*/
DROP VIEW IS_S1;	/*拒绝执行*/
Publicado 11 artículos originales · ganado elogios 6 · vistas 2707

Supongo que te gusta

Origin blog.csdn.net/lrx359641708/article/details/105179590
Recomendado
Clasificación