Operaciones de comando básicas de MySQL
- 1. Conceptos básicos
- 2. Ver la base de datos
- 3. Declaración SQL
-
- 3.1 Crear y eliminar bases de datos y tablas.
- 3.2 Administrar la estructura de la tabla en la base de datos.
- 3.3 Modificar y actualizar registros de datos en la tabla de datos.
- 3.4 Eliminar registros de datos especificados en la tabla de datos
- 3.5 Modificar el nombre y la estructura de la tabla
- 3.6 Utilice el criterio if para crear una tabla y probar el incremento y el llenado automáticos.
- 4. Operaciones avanzadas en tablas de datos.
1. Conceptos básicos
1.1 Clasificación de bases de datos
1.1.1 Base de datos relacional (base de datos de segunda generación)
Representante: mysql, mariadb, oracle
- El alias del lenguaje operativo es SQL.
- El comando de operación se llama almacenamiento de declaraciones SQL.
- Estructura de datos de almacenamiento: los datos de almacenamiento de tablas bidimensionales se denominan datos estructurados.
1.1.2 Base de datos no relacional (base de datos de tercera generación)
Representante: noSQL
-
Estructura de almacenamiento: par clave-valor nombre = lilade nombre: serie temporal de índice estable de lilade
-
Tipo de caché: redis memcached
-
Tipo de documento: mongodb
-
Tipo de índice: búsqueda elástica
-
Tipo secuencial: prometheus infiuxdb
(Las bases de datos no relacionales no tienen comandos de operación unificados. Diferentes bases de datos tienen diferentes métodos operativos. Diferentes bases de datos tienen diferentes estructuras de almacenamiento. A menudo se usan pares clave-valor, o algunos se implementan utilizando series de tiempo de índice de documentos. almacenamiento de datos)
1.2 Bibliotecas y tablas
Hay tablas en la biblioteca. Las tablas contienen datos estructurados en forma de tablas bidimensionales.
Columna (campo): se utiliza para describir un atributo de un objeto.
Fila (registro): se utiliza para describir información sobre un objeto.
- Primero, debe haber una biblioteca. Cree una tabla en la biblioteca. Los datos estructurados se almacenan en la tabla de acuerdo con filas y columnas. La columna se usa para describir un atributo del objeto, y la fila representa el registro usado para describir el información de un objeto *
1.3 Declaración SQL
Función: Se utiliza para mantener y administrar bases de datos relacionales, incluida la consulta de datos, actualización, control de acceso, administración de usuarios y otras funciones.
1.3.1 Clasificación del lenguaje SQL
- DDL: Lenguaje de definición de datos, utilizado para crear objetos de bases de datos, bibliotecas, tablas, índices, etc.
- DML: lenguaje de manipulación de datos, utilizado para agregar, eliminar y modificar datos en tablas (utilizado para administrar datos de tablas)
- DQL: lenguaje de consulta de datos, utilizado para encontrar registros de datos calificados en tablas de datos (utilizado para consultar datos en la tabla)
- DCL: lenguaje de control de datos, utilizado para establecer o cambiar los permisos de rol o usuario de la biblioteca (utilizado para administrar usuarios de bases de datos y operaciones de permisos de usuario)
1.3.2 Tipos de datos comunes
int: entero sin signo [0,2 32-1], con signo [-2 31,2^31-1]
float: punto flotante de precisión simple 4 bytes 32 bits
double: punto flotante de precisión doble 8 bytes 64 bits
char: longitud fija tipo de carácter
varchar: tipo de carácter de longitud variable
texto: texto
imagen: imagen
decimal(5,2): 5 números de longitud válidos, 2 dígitos después del punto decimal
Características del campo de clave principal; solo puede haber una clave principal en la tabla que crea, y los valores en los valores del campo de clave principal no se pueden repetir, deben ser únicos y no se permite que estén vacíos.
2. Ver la base de datos
2.1 Verificar la versión de MySQL
#在mysql内查看mysql版本
select version();
#在linux系统中查看mysql版本
mysql -V
Ver la versión de mysql en mysql
Ver el número de versión de mysql en el sistema Linux
2.2 Ver la base de datos
#大小写不区分,分号“;”表示结束
SHOW DATABASES;
2.3 Ver las tablas contenidas en la base de datos
1.USE 数据库名;
SHOW TABLES;
2.show tables from 数据库名;
El primer tipo
El segundo tipo
2.4 Ver estructura de la tabla
1.use mysql;
desc ky31;
2.desc mysql.ky31;
camino relativo
camino absoluto
3. Declaración SQL
3.1 Crear y eliminar bases de datos y tablas.
3.1.1 Crear una nueva base de datos
CREATE DATABASE 数据库名;
#示例:创建一个名为NBA的数据库
creat database NAB;
3.1.2 Crear una nueva tabla
#主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。
CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型[,...][,PRIMARY KEY (主键名)]);
#示例:
use NBA;
create table info(球衣号 int(3) not null,球员 char(10),年龄 int(2),性别 int(2));
desc info;
3.1.3 Eliminar la tabla de datos especificada
#如不用USE进入库中,则需加上数据库名
DROP TABLE [数据库名.]表名;
#方法一:使用绝对路径,需要进入表所在数据库
use NBA;
drop table info;
desc info;
#方法二:使用相对路径,不需要进入表所在数据库
drop table NBA.info;
show tables in NBA;
3.1.4 Eliminar la base de datos especificada
DROP DATABASE 数据库名;
3.2 Administrar la estructura de la tabla en la base de datos.
3.2.1 Insertar nuevos registros de datos en la tabla de datos
#向数据表中插入新的数据记录
insert into 表名(字段1,字段2,字段3) values(字段1的值,字段2的值,字段3的值);
#示例1
insert into info(球衣号,球员,年龄,性别) values(23,'詹姆斯',39,'男');
select * from info;
#示例2:直接使用表明加入字段
insert into info values(3,'戴维斯',29,'男');
#示例3:可以指定字段添加
insert into info(球衣号,球员,年龄) values(15,'里弗斯',23);
Ejemplo 1
Ejemplo 2; Utilice directamente el nombre de la tabla para agregar campos.
Ejemplo 3: Puede especificar campos para agregar.
3.2.2 Consultar registros de datos
#格式
SELECT 字段名1,字段名2[,...] FROM 表名 [WHERE 条件表达式];
#示例1:查看所有数据
select * from info;
#示例2:查询指定数据
select 球衣号,球员 from info where 年龄=39;
#示例3:以列表方式竖向显示
select * from info \G;
#示例4:只显示头2行
select * from info limit 2;
#示例5:显示第2行后的前2行
select * from info limit 2,2;
Ejemplo 1: Ver todos los datos
Ejemplo 2: Consultar datos especificados
Ejemplo 3: Mostrar verticalmente en modo lista
Ejemplo 4: Mostrar solo las 2 primeras filas
Ejemplo 5: Mostrar las 2 primeras filas después de la segunda fila
3.3 Modificar y actualizar registros de datos en la tabla de datos.
#格式
UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] [WHERE 条件表达式];
#示例1:修改年龄和球衣号
update info set 年龄=19,球衣号=14
where 球衣号=15;
Ejemplo 1: Modificar edad y número de camiseta
3.4 Eliminar registros de datos especificados en la tabla de datos
#格式:
DELETE FROM 表名 [WHERE 条件表达式];
#示例1:删除表中球衣号为1的数据
delete from info where 球衣号=1;
#示例2:删除球衣号3球衣号2
delete from info where 球衣号=3 or 球衣号=2;
Ejemplo 1: Eliminar los datos con la camiseta número 1 en la tabla
Ejemplo 2: Eliminar la camiseta número 3 y la camiseta número 2
3.5 Modificar el nombre y la estructura de la tabla
3.5.1 Modificar el nombre de la tabla
ALTER TABLE 旧表名 RENAME 新表名;
#示例:将表名info修改成lilade
Ejemplo: cambiar la información del nombre de la tabla a lilade
3.5.2 Ampliar la estructura de la tabla (agregar campos)
#default 'default值':表示此字段设置默认值 地址未填写!;可与 NOT NULL 配合使用
ALTER TABLE 表名 ADD address varchar(50) default 'default值';
#示例
alter table info add 球队 char(100) default'湖人';
3.5.3 Modificar el nombre del campo (columna) y agregar una clave única
#格式
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型 [unique key];
#示例:
alter table info change 年龄 岁数 char(200) unique key;
3.5.4 Eliminar campos
#格式
ALTER TABLE 表名 drop 字段名;
#示例
alter table info drop 岁数;
3.6 Utilice el criterio if para crear una tabla y probar el incremento y el llenado automáticos.
use NBA;
create table if not exists 开拓者 (
球衣号 int(4) zerofill primary key auto_increment,
球员 char(20) not null,
年龄 int(18) not null unique key,
性别 int(3) not null,
出身 char(100));
-
f no existe: indica si la tabla a crear ya existe, y si no existe continuar creándola.
-
int(4) zerofill: significa que si el valor tiene menos de 4 dígitos, rellénelo con "0" delante, por ejemplo 0001
-
auto_increment: indica que este campo es un campo de incremento automático, es decir, cada registro se incrementa automáticamente en 1 y el valor predeterminado comienza desde 1; los datos del campo de incremento automático no se pueden repetir; el campo de incremento automático debe ser la clave principal ; si los datos del registro agregado no especifican el valor de este campo Y si la adición falla, se incrementará automáticamente una vez.
-
Clave única: Indica la restricción de clave única de este campo. Los datos de este campo no se pueden repetir, solo puede haber una clave principal en una tabla, pero puede haber varias claves únicas en una tabla.
-
no nulo: indica que no se permite
probar este campo para NULL
4. Operaciones avanzadas en tablas de datos.
4.1 Clonar tabla: generar registros de datos de la tabla de datos en una nueva tabla
Método 1: crear primero y luego importar
#通过 LIKE 方法,复制 info 表结构生成 湖人 表
create table 湖人 like info;
#导入数据
insert into 湖人 select * from info;
Método 2: importar al mismo tiempo al crear
create table 湖人 (select * from info);
4.2. Borrar la tabla: eliminar todos los datos de la tabla
4.2.1, eliminación deldte
DELETE清空表后,返回的结果内有删除的记录条目;DELETE工作时是一行一行的删除记录数据的;如果表中有自增长字段,使用DELETE FROM 删除所有记录后,再次新添加的记录会从原来最大的记录 ID 后面继续自增写入记录。
#delete from 表名;
delete from 开拓者;
4.2.2 truncar eliminación
truncate table 开拓者;
4.2.3 Crear tabla temporal
临时表创建成功之后,使用SHOW TABLES命令是看不到创建的临时表的,临时表会在连接退出后被销毁。 如果在退出连接之前,也可以可执行增删改查等操作,比如使用 DROP TABLE 语句手动直接删除临时表
##添加临时表test
create temporary table test (
id int(4) zerofill primary key auto_increment,
name varchar(10) not null,
cardid int(18) not null unique key,
hobby varchar(50));
## 查看当前库中所有表
show tables;
##在临时表中添加数据
insert into test values(1,'zhangsan',123456789,'watch a film');
##查看当前表中所有数据
select * from test;
##退出数据库
quit
##重新登录后进行查看
mysql -u root -p
##查看之前创建的临时表中所有数据,发现已经被自动销毁
select * from test;
4.3 Crear restricciones de clave externa
Tabla principal: La estructura de la tabla pro es la siguiente:
Subtabla: La estructura de la tabla stu es la siguiente:
Los campos de la subtabla asociados con las claves foráneas deben configurarse como claves primarias. Los campos de clave externa de la tabla principal y los campos de la subtabla deben tener el mismo tipo de datos, longitud de caracteres y restricciones.
#为主表设置主键
alter table pro add primary key(pid);
#为从表设置外键
alter table stu add foreign key (proid) references pro(pid);
Prueba: la tabla principal no se puede eliminar en este momento, porque la tabla externa hace referencia a la tabla principal. Debe ver y eliminar las restricciones de clave externa. Si desea eliminar el campo de restricción de clave externa, primero elimine la clave externa. restricción y luego elimine el nombre de la clave externa.Prueba: al eliminar
registros de datos, primero debe eliminar la tabla secundaria y luego la tabla principal, lo que significa que al eliminar la tabla de clave principal, primero debe eliminar otras tablas asociadas con ella. .