Diferencias entre bases de datos

La base de datos se utiliza para almacenar datos. Por lo general, existen SQL, MySQL, etc., que los sitios web o sistemas utilizan para almacenar datos. La diferencia entre mssql y mysql

Mssql es el servidor SQL de Microsoft, que se ejecuta en Windows 2000, 2003 y otras plataformas.

Mysql es un servidor de base de datos de código abierto que puede ejecutarse en plataformas Windows y Unix\\linux. Su versión estándar es gratuita, por lo que puedes visitar www.mysql.com.

Asp\\php es sólo un lenguaje interpretado. No es necesario que mssql no pueda usar php, y mysql no necesariamente necesita usar php, pero asp-mssql y php-mysql son combinaciones comunes.

Manual Completo de Base de Datos SQL_1

SQL es la abreviatura de Structured Query Language. SQL es un conjunto de comandos de operación creados especialmente para bases de datos y es un lenguaje de base de datos completamente funcional. Al usarlo, solo necesita emitir el comando "qué hacer", y "cómo hacerlo" no está dentro del alcance de la consideración del usuario. SQL es potente, fácil de aprender y usar y se ha convertido en la base para las operaciones de bases de datos. Ahora casi todas las bases de datos admiten SQL.

##1 2. Arquitectura de datos de la base de datos SQL

La arquitectura de datos de la base de datos SQL es básicamente una estructura * * *, pero la terminología utilizada es diferente de la terminología del modelo relacional tradicional. En SQL, el esquema relacional se denomina "tabla base"; el esquema de almacenamiento (esquema interno) se denomina "archivo de almacenamiento"; el subesquema (esquema externo) se denomina "vista"; El atributo se llama Lista. Este nombre es tan simétrico como ^00100009a^:

##1 3. La composición del lenguaje SQL

Antes de aprender formalmente el lenguaje SQL, primero tenemos una comprensión básica del lenguaje SQL. Presente la composición del lenguaje SQL:

1. Una base de datos SQL es una colección de tablas definidas por uno o más esquemas SQL.

2. Una tabla SQL consta de un conjunto de filas. Una fila es una serie (un conjunto de) columnas, cada columna corresponde a un elemento de datos.

3. La tabla puede ser una tabla básica o una vista. Una tabla base es la tabla que realmente está almacenada en la base de datos, mientras que una vista es una definición de una tabla que consta de varias tablas base u otras vistas.

4. Una tabla básica puede abarcar uno o más archivos de almacenamiento, y un archivo de almacenamiento también puede almacenar una o más tablas básicas. Cada archivo de almacenamiento corresponde al último archivo físico en el almacenamiento externo.

5. Los usuarios pueden utilizar sentencias SQL para consultar vistas y tablas básicas. Desde la perspectiva del usuario, la vista y la tabla base son iguales, no hay diferencia. Todas son relaciones (tablas).

6.Los usuarios de SQL pueden ser aplicaciones o usuarios finales. Las declaraciones SQL se pueden integrar en programas en lenguajes host como FORTRAN, COBOL, PASCAL, PL/I, C y Ada. En un entorno interactivo, SQL User también se puede utilizar como una interfaz de usuario independiente para los usuarios finales.

##1 Cuarto, operar la base de datos

SQL incluye todas las operaciones en la base de datos. La base de datos consta principalmente de cuatro partes:

1. Esta parte también se llama "SQL DDL" y define la estructura lógica de la base de datos, incluida la definición de la base de datos, tablas básicas, vistas e índices.

2. Operación de datos: esta parte también se llama "SQL DML" e incluye dos operaciones: consulta de datos y actualización de datos. Incluye tres operaciones: inserción, eliminación y actualización.

3. Control de datos: El control del acceso de los usuarios a los datos incluye autorización de tablas y vistas básicas, descripción de reglas de integridad, declaraciones de control de transacciones, etc.

4. Reglas para el uso del lenguaje SQL incorporado: reglas para el uso de sentencias SQL en programas en lenguaje anfitrión.

Los presentaremos por separado a continuación:

##2 (1) Definición de datos

La función de definición de datos SQL incluye la definición de bases de datos, tablas básicas, índices y vistas. .

En primer lugar, echemos un vistazo a los tipos de datos básicos proporcionados por SQL: (como ^00100009b^).

Creación y eliminación de una base de datos

.

(1) Crear una base de datos: una base de datos es un conjunto de datos que contiene varias tablas básicas. Su formato de declaración es:

Crear base de datos ltnombre de la base de datos>[Otros parámetros]

Entre. ellos, en el sistema debe ser Único y no puede repetirse, de lo contrario provocará errores de acceso a los datos. [Otros parámetros] varían según el sistema de implementación de base de datos específico.

Por ejemplo: para establecer una base de datos de gestión de proyectos (xmmanage), la declaración debe ser:

Crear base de datos xmmanage

(2) Eliminar base de datos: Eliminar de la Base de Datos del sistema y todo su contenido.

El formato de la declaración es: eliminar base de datos

Ejemplo: para eliminar la base de datos de gestión de proyectos (xmmanage), la declaración debe ser:

Eliminar base de datos xmmanage

p>

2. Definición y modificación de tablas básicas

Una tabla que existe de forma independiente se denomina tabla básica. En el lenguaje SQL, una relación sólo corresponde a una tabla básica. La definición de tablas básicas se refiere al establecimiento de patrones de relación básicos, y los cambios se refieren a la eliminación y modificación de tablas básicas existentes en la base de datos.

(1) Definición de tabla básica: la tabla básica es una relación no exportada y su definición implica el nombre de la tabla, el nombre de la columna, el tipo de datos, etc. El formato de la declaración es:

Crear tabla "ltdatabase name>. 〳lt; nombre de la tabla>

( ltcolumn name>tipo de datos [valor predeterminado] [no nulo/nulo]

の, lt nombre de columna> tipo de datos [valor predeterminado] [no nulo/nulo]]...

[, ÚNICO(nombre de columna [, nombre de columna] ... )]

[, clave principal].

[, clave externa (nombre de columna [, nombre de columna]...) referencia (nombre de lista [, nombre de lista]. .. ................................................. ............. ................................................. ................................ ...................... ................................................. ....... ......

[, verificar (condición)][otros parámetros])

Donde, > indica que la tabla recién creada se almacenará en la base de datos;

La tabla recién creada consta de dos partes: una parte es la tabla y un conjunto de nombres de columnas, y la otra parte son los datos almacenados reales (es decir, al definir la tabla, los datos se pueden almacenar directamente en la tabla);

Los nombres de las columnas están definidos por el usuario y son fáciles de entender, y no se pueden usar espacios en los nombres de las columnas;

Los tipos de datos son los diversos tipos de datos estándar introducidos arriba;

p>

[[NOT NULL/NULL] indica si la columna puede almacenar valores nulos. El llamado valor nulo es un valor "desconocido" o "sin sentido". Lenguaje SQL. Los datos "0" y los espacios no son valores nulos. El sistema generalmente permite valores nulos de forma predeterminada, por lo que cuando no se permiten valores nulos, debe usar explícitamente no nulo;

[ , UNIQUE organiza las columnas en el orden especificado. Si no se especifica el orden de clasificación, las columnas se organizan en el orden definido;

[Clave principal] se utiliza para especificar la clave principal de la tabla (es decir). es, el atributo principal en la relación). Las restricciones de integridad de la entidad especifican que la clave principal debe ser única y única. Está vacía

[, clave externa (nombre de columna [, nombre de columna]...) la referencia (nombre de columna [, nombre de columna]...) se utiliza para especificar restricciones de integridad de referencia de clave externa, clave externa La clave especifica la columna relevante como clave externa y su objeto de referencia es la columna especificada en otra tabla, es decir , la columna en la apariencia importada si no se especifica el nombre de la columna externa, el sistema utilizará de forma predeterminada el mismo nombre de columna que la clave de referencia. Nota Sí, debe utilizar referencias cuando utilice claves externas y la integridad de la referencia de clave externa. limitaciones de otros datos.

[, check] se utiliza para verificar los datos almacenados en la tabla bajo condiciones específicas para determinar su legalidad y mejorar la seguridad de los datos.

Ejemplo: Crear un alumno.

Crear tabla de estudiante //Crear una tabla de estudiante básica.

(st_class CHAR(8), //Defina la columna ST_classclass, el tipo de datos es una cadena de longitud fija de 8 bits.

St_no CHAR(10) NOT NULL, // Definición El número de estudiante de la columna St_no es una cadena de longitud fija de 10 dígitos, no vacía.

St_namechar (8) no está vacía //Defina el nombre de la columna ST_name, que es un 8. Cadena de longitud fija de dígitos, no vacía.

St_sex CHAR(2), //Define el género de la columna St_sex, el tipo es una cadena de longitud fija de 2 dígitos.

St_age SMALLINT, //Define el género de la columna St_age. Edad, el tipo es un entero corto

Clave principal (st_no))//Define el número de estudiante st_no como clave principal.

Ejemplo: Crear una tabla de configuración de curso (tema)

Crear tema de tabla //Crear un tema de tabla básico.

(su_no CHAR(4) NOT NULL, //define el número de clase de la columna su_no, que es una cadena de longitud fija de 4 dígitos, no vacía.

Su _ sujetochar (20) no está vacío, //define el nombre del curso de la columna su_subject, que es una cadena de longitud fija de 20 dígitos, no vacía

Su_credit INTEGER, //define la columna de Su_credit. crédito, el tipo es entero largo. p>

Su_period INTEGER, //Al definir la columna Su_period, el tipo es entero largo

Su_preno CHAR(4), //Definir el número de Su_preno CHAR. , que es una cadena de longitud fija de 4 dígitos.

PRIMARY KEY(su_no))//Defina el número de clase su_no como clave principal.

Ejemplo: Crear tabla de selección de cursos para estudiantes (puntuaciones)

Crear tabla de puntuaciones //Crear tabla de puntuaciones básica.

(st_no CHAR(10), //Defina el número de estudiante de la columna st_no, el tipo es una cadena de longitud fija de 10 dígitos.

Su_no CHAR(4), // Definir la columna Su_no El número de clase es una cadena de longitud fija de 4 dígitos

Sc_score entero nulo, //definir la columna sc_score, entero largo, puede ser NULL. La clave externa (st_no. ) se refiere al estudiante, //Introduce la clave externa ST_no de la tabla estudiante para garantizar la asociación y sincronización entre esta tabla y la tabla del estudiante.

La clave externa (suno) se refiere a la. sujeto) // Introduce desde el asunto de la tabla. Haga referencia a la clave externa su_no para garantizar la asociación y sincronización entre esta tabla y el asunto de la tabla.

(2) Eliminar tabla básica: Se utiliza para eliminar una tabla básica y todo su contenido de la base de datos. Su formato de oración es:

DROP TABLE" lt; nombre de la base de datos>. ]Nombre de la tabla

Por ejemplo, elimine todas las tablas creadas anteriormente.

Estudiantes, materias, puntuaciones

(3) Modificación de la tabla básica: una vez establecida y utilizada la tabla básica por un período de tiempo, es posible que sea necesario modificar la estructura de la tabla básica. para modificarlo de acuerdo con las necesidades reales, es decir, agregar un nuevo atributo o eliminar el atributo.

El formato de la declaración utilizada para agregar atributos es:

Cambiar tabla " ltdatabase name >.

]Nombre de tabla agregado

(nombre de columna lt>tipo de datos [valor predeterminado][no nulo/null]

の, nombre de columna lt>tipo de datos [valor predeterminado][no -null] /empty]]...

[, ÚNICO(nombre de columna [, nombre de columna]...)]

[, clave principal]

[, clave externa (nombre de columna [, nombre de columna]...) referencia (nombre de lista [, nombre de lista]................... ... ................................................. ............................................................ ........................... ....................... .............

[, Verificar (condición)][Otros parámetros])

Por ejemplo, agregue la fecha de nacimiento del recién nacido columna a la tabla básica estudiante, el tipo de datos es FECHA y no puede ser nulo

Cambiar la tabla de adición (la fecha de nacimiento no está vacía)

El formato de declaración para. eliminar atributos es:

Cambiar tabla "ltdatabase name>.]Eliminar nombre de tabla

( lt nombre de columna>tipo de datos [valor predeterminado][no nulo/null]

の, lt nombre de la columna>tipo de datos [valor predeterminado][no nulo/null]]...)

Por ejemplo, elimine la columna st_age en la tabla básica estudiante

Cambiar tabla de eliminación de estudiantes (st_age)

3. Definición y eliminación de vistas

En SQL, la vista es la unidad básica de la estructura de datos de nivel 1 del esquema externo. Es una tabla derivada de una o varias tablas básicas. Es una "tabla especial" que extrae varios subconjuntos de tablas básicas existentes y los proporciona a los usuarios. Este método de construcción debe implementarse mediante la instrucción SELECT en SQL. vista, solo la definición se almacena en los datos del sistema, y ​​los datos correspondientes de la vista no se almacenan directamente hasta que el usuario usa la vista

(1) Definición de vista: se puede definir una vista. utilizando la instrucción CREATE VIEW. El formato de la declaración es:

Crear el nombre de la vista como una declaración SELECT

Desde lo básico Exportar una vista desde la tabla:

Exportar una vista que contenga solo alumnas de la tabla básica estudiante

Crear la vista WOMANVIEW como //Crear la vista WOMANVIEW

SELECT st_class, st_no, st_name, st_age //Seleccionar. las columnas para mostrar st_class, st_no, st_name, st_age.

De estudiante // De la tabla básica introducción del estudiante

Donde st _ sex = 'female' //La condición de introducción es que el género es 'femenino'. Tenga en cuenta que todas las variables de caracteres están entre comillas simples.

Exportar vistas desde múltiples tablas base:

Por ejemplo, una vista que contiene solo alumnas con puntuaciones superiores a 60 proviene de las tablas base estudiante y puntuación.

CREATEVIEW WOMAN_SCORE AS //Definir vista WOMANSCORE.

SELECT Student.st_class, Student.st_no, Student.st_name, Student.st_age, Score.sc_score //Muestra selectivamente las columnas relevantes.

DESDE Student.score //Introducido desde las tablas básicas Student y Score.

Donde Student.st_sex='female' y Score.sc_score gt= 60 y Student. ST_no = puntuación ST_no//Criterios de selección: el género es "femenino", puntuación superior a 60 puntos. Y use st_no para vincular las dos tablas.

Si aplicas esta vista en el futuro, simplemente usa la declaración.

SELECT * FROM WOMAN_SCORE //Donde "*" es un carácter comodín que representa todos los elementos.

(2) Eliminar vista: Se utiliza para eliminar vistas que ya no se utilizan. El formato de la declaración es el siguiente:

Eliminar nombre de vista de vista

Ejemplo: eliminar la vista WOMAN_SCORE creada anteriormente.

DROP VIEW WOMAN_SCORE

4. Definición y eliminación de índices

Los índices son conceptos de almacenamiento físico, no conceptos lógicos. En SQL, se abandona el concepto de índice y se utiliza directamente el concepto de clave primaria. Vale la pena mencionar que algunos DBMS relacionales contienen tanto un mecanismo de índice como un mecanismo de clave primaria. Aquí se recomienda el mecanismo de clave principal porque consume menos recursos del sistema y es más eficiente.

(1) Definición del índice: el índice se basa en la tabla básica y su formato de declaración es:

Cree un nombre de índice [único] en

でlt ; Nombre de la base de datos > Nombre de la tabla (Nombre de columna [ASC/DESC] [, Nombre de columna [ASC/DESC]]...

La palabra reservada ÚNICA aquí significa que el valor del índice en la tabla básica no se permite repetir, si es el valor predeterminado, significa que los valores de índice en la tabla pueden repetirse, DESC significa ordenar en orden descendente por clave de índice, y si es predeterminado o ASC significa ordenar; en orden ascendente,

Ejemplo: Ordene la tabla básica estudiante en orden ascendente y descendente respectivamente. Indexada por st_no y st_age, el valor del índice no se puede repetir.

Cree un índice único STINDEX. on // Crear índice STINDEX.

Student(st_no ASC, st_age DESC) //Indexar st_no y st_age in.

(2) Eliminar índice:

Eliminar nombre del índice

Ejemplo: Eliminar el índice STINDEX creado anteriormente

Descartar índice STINDEX

##2 (2) Consulta de datos

SQL es un lenguaje con potentes capacidades de consulta. Siempre que los datos existan en la base de datos, siempre se pueden pasar. El método apropiado es buscarlos en la base de datos. Solo hay una declaración de consulta en SQL: SELECT. , que puede completar todas las funciones de consulta. La sintaxis completa de la instrucción SELECT puede ser la siguiente:

Seleccione el nombre de la columna o el conjunto de expresiones de columna de la tabla de destino

Desde la base. tabla o (y) conjunto de vistas

[[WHERE expresión condicional]

[[Agrupar por conjunto de nombres de columnas]

[[Con expresión condicional de grupo]]

[[ORDER BY nombre de columna[set]...]

La semántica de toda la declaración es la siguiente: De las tablas enumeradas en la cláusula FROM, seleccione las tuplas que satisfaga la expresión condicional dada en la cláusula WHERE y luego seleccione las tuplas según los valores de las columnas especificadas en la cláusula GROUPBY (cláusula de agrupación) Agrúpelas y luego extraiga aquellos grupos en la cláusula HAVING que satisfagan la expresión de condición de grupo y evalúe la salida según el nombre de la columna o la expresión de la columna proporcionada en la cláusula SELECT (cláusula de clasificación). La tabla de destino se puede reordenar agregando ASC (orden ascendente) o DESC (orden descendente). La adopción es una respuesta satisfactoria.