Directorio de artículos
- prefacio
- tipo entero MySQL
- Tipo de cadena MySQL
- MySQL tipo decimal
- Tipo de tiempo de MySQL
- Sentencias SQL básicas de uso común
- detalles
-
- El concepto de base de datos.
- Las 3 partes comúnmente usadas en SQL
- Comparación de tipos de datos entre SQL y JAVA
- Iniciar y detener operaciones de la base de datos.
- Conectarse a la base de datos remota
- base de datos de conexión
- ver la lista de bases de datos
- crear base de datos
- Compruebe si la tabla existe antes de crearla y elimínela si existe
- eliminar base de datos
- Comprobar la existencia antes de descartar una base de datos
- Establecer codificación al crear datos
- Modificar la codificación de la base de datos
- Ingresar o cambiar bases de datos
- Mostrar información actual de la base de datos
- Ver todas las tablas en la base de datos actual
- crear una tabla sin restricciones
- Crear una tabla con restricciones
- Crear tabla anotada
- mostrar información de la tabla
- Mostrar la información de la tabla de manera más intuitiva
- Información de la tabla de visualización más intuitiva y detallada
- Agregar campos de tabla
- Agregar campos de tabla y comentarios
- Modificar el tipo de datos de un campo de tabla
- Modificar el tipo de datos y el nombre de campo de un campo de tabla
- Modificar el tipo de datos, el nombre del campo y el comentario de un campo de tabla
- borrar campo de tabla
- modificar el nombre de la tabla
- Modificar la información de comentario de la tabla.
- borrar tabla
- Verificar antes de eliminar la tabla
prefacio
1.
SQL
Las declaraciones no distinguen entre mayúsculas y minúsculas.
tipo entero MySQL
número de serie | tipo de datos | rango de datos |
---|---|---|
1 | TINYINT | -128~127 |
2 | PEQUEÑO | -32768~32767 |
3 | MENTA MEDIO | -2 23~2 23-1 |
4 | EN T | -2 31~2 31-1 |
5 | EMPEZANDO | -2 63~2 63-1 |
Tipo de cadena MySQL
número de serie | tipo de datos | rango de datos | usar |
---|---|---|---|
1 | CARÁCTER(n) | 0~255 bytes | cadena de longitud fija |
2 | VARCHAR(n) | 0~65535 bytes | cadena larga |
3 | TEXTO | 0~65535 bytes | datos de texto largo |
4 | TEXTO LARGO | 0~2^32-1 bytes | datos de texto extremadamente grandes |
5 | GOTA | 0~65535 bytes | datos binarios de texto largo |
6 | GRUPO DE PULMON | 0~2^32-1 bytes | Datos de texto binarios extremadamente grandes |
MySQL tipo decimal
número de serie tipo de datos Uso de datos rango de datos 1 Flotar Flotador (m, n) 7 dígitos significativos 2 Doble Doble(m,n) 15 dígitos significativos 3 Decimal Decimales(m,n) 28 dígitos significativos
m
Indica la longitud total del número de punto flotante,n
indicando el número de dígitos significativos después del punto decimal.
Tipo de tiempo de MySQL
número de serie | tipo de datos | Formato | usar |
---|---|---|---|
1 | FECHA | AAAA-MM-DD | fecha |
2 | TIEMPO | HH:MM:SS | tiempo |
3 | AÑO | AAAA | años |
4 | FECHA Y HORA | AAAA-MM-DD HH:MM:SS | fecha y hora |
5 | MARCA DE TIEMPO | Entero de 10 o 13 dígitos (número de segundos) | sello de tiempo |
Sentencias SQL básicas de uso común
número de serie | instrucción SQL | usar | describir | número de serie | instrucción SQL | usar | describir |
---|---|---|---|---|---|---|---|
1 | mysql -u root -p |
conectarMySQL |
Ingrese el comando en la ventana de la línea de comandos mysql -u root -p , presione Entrar y luego ingrese MySQL la contraseña (no olvide la contraseña, será difícil encontrarla), y luego presione Entrar para conectarse MySQL . Inicialmente, se usa el inicio de sesión de usuario root y no se puede usar todo el tiempo en el trabajo root . Debido a que root los permisos son demasiado grandes, el riesgo es grande, por lo que después de crear un usuario con los permisos adecuados, no inicie sesión en root el usuario con frecuencia. |
2 | create database test_db; |
crear base de datos | — |
3 | show databases; |
ver todas las bases de datos | — | 4 | create database MyDB_two character set utf8; |
Establecer la codificación de caracteres al crear la base de datos | character set se puede abreviar como charset . |
5 | show create database MyDB_two; |
Ver el método de codificación de la base de datos | — | 6 | alter database MyDB_one character set utf8; |
Modificar la codificación de la base de datos | — |
7 | use MyDB_one |
Ingresar o cambiar bases de datos | Úselo use [数据库名] para ingresar o cambiar de base de datos. Cuando te conectas por primera vez MySQL , no estás en ninguna base de datos. Si deseas usar una determinada base de datos, debes ingresar a esta base de datos. use [数据库名] Se puede omitir el punto y coma después de este comando, y esta es SQL la única declaración en la declaración que puede omitir el punto y coma. |
8 | select database(); |
mostrar la base de datos actual | En la base de datos, puede usar select database(); para ver en qué base de datos se encuentra actualmente. Cuando opere la base de datos durante mucho tiempo, después de alternar entre muchas bases de datos, verifique la base de datos actual para evitar operar la base de datos incorrecta. |
9 | show tables; |
ver las tablas en la base de datos actual | — | 10 | create table phone_table(pid INT, name CHAR(20), price INT); |
crear mesa | — |
11 | show create table phone_table; |
mostrar información de la tabla | El uso show create table [表名]; puede mostrar MySQL información como los campos de la tabla, el motor y la codificación de caracteres predeterminada. Al igual que mostrar la información de la base de datos, show solo se puede mostrar la información de la tabla de datos creada y la información no se puede mostrar al mismo tiempo que se crea. |
12 | desc phone_table; |
Mostrar la información de la tabla de manera más intuitiva | — |
13 | alter table phone_table add color CHAR(20); |
Agregar campos de tabla | — | 14 | alter table phone_table drop price; |
borrar campo de tabla | — |
15 | alter table phone_table modify name VARCHAR(12); |
Modificar el tipo de datos de un campo de tabla | — | dieciséis | alter table phone_table change name pname CHAR(18); |
Modificar el tipo de datos y el nombre de campo de un campo de tabla | — |
17 | drop table phone_table; |
borrar tabla | — | 18 | --- |
— | — |
detalles
El concepto de base de datos.
1、结构化查询语言(
Structured Query Language
)简称SQL
;
2、数据库管理系统(Database Management System
)简称DBMS
;
3、数据库管理员(Database Administration
)简称DBA
,功能是确保DBMS
的正常高效运行。
SQL常用的3个部分
1、数据查询语言(
DQL
): 其语句也称“数据库检索语句”,用以从表中获得数据,保留字SELECT
经常使用,DQL
也是所有SQL
中用的最多的,其他保留字还有WHERE
,ORDER BY
,GROUP BY
和HAVING
这些保留字还与DML
一起使;
2、数据操作语言(DML
): 其余局包括动词INSERT
,UPDATE
和DELETE
。他们分别用于添加,修改和删除表中的行。也称动作语言;
3、数据定义语言(DDL
):DDL
主要用于操作数据库。
SQL与JAVA的数据类型对比
MySQL | Java |
---|---|
INT |
int |
BIGINT |
long |
DECIMAL |
BigDecimal |
DATE/DATETIME |
java.util.Date |
VARCHAR |
String |
数据库的启停操作
MySQL
在系统启动时,会自动启动服务,无需手动启动了。
当然也可以手动启动或停止服务,以管理员身份运行cmd
执行如下指令即可。
停止服务
net stop mysql80
启动服务
net start mysql80
连接远程数据库
mysql [-h 127.0.0.1] [-P 3306] -u root -p
-h
:MySQL
服务所在的主机IP
-P
:MySQL
服务端口号, 默认3306
-u
:MySQL
数据库用户名
-p
:MySQL
数据库用户名对应的密码
[]
内为可选参数,如果需要连接远程的MySQL
,需要加上这两个参数来指定远程主机IP
、端口,如果
连接本地的MySQL
,则无需指定这两个参数。
连接地数据库
mysql -u root -p
root
是用户名。语句末尾不能加分号,否则报错,这是MySQL
唯一加分号报错的SQL
语句。
查看数据库列表
show databases;
创建数据库
create database 数据库名称;
创建表之前检查是否已存在,如果存在就移除
create database if not extists 数据库名;
删除数据库
drop database 数据库名称;
删除数据库前检查是否存在
drop database if exists 数据库名称;
创建数据时设置编码
create database 数据库名称 character set utf8;
character set
可以缩写成charset
。
修改数据库编码
alter database 数据库名称 character set utf8;
进入或切换数据库
use 数据库名称
使用
use 数据库名称
进入或切换数据库。
刚连接上MySQL
时,没有处于任何一个数据库中,如果要使用某一个数据库,就需要进入到这个数据库中。
use 数据库名
这个命令后面的分号可以省略,这是SQL
语句中唯一可以省略分号的语句。
显示当前数据库信息
select database();
进入数据库中,可以使用
select database();
来查看当前处于哪个数据库。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。
查看当前数据库的所有表
show tables;
创建非约束表
create table 表名称(id INT, name CHAR(20), price INT);
创建一张带有三个字段的表。
id
字段的类型为INT
;
name
字段的类型为CHAR(20)
;
pric
字段的类型为INT
。
创建带约束的表
create table 表名称(id BIGINT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(25) UNIQUE, email VARCHAR(25) NOT NULL, age INT DEFAULT 17);
表的约束
1、非空约束:NOT NULL
,不允许某列的内容为空;
2、设置列的默认值:DEFAULT
;
3、唯一约束:UNIQUE
,该表中,该列的内容必须唯一;
4、主键约束:PRIMARY KEY
,非空且唯一;
5、主键自增长:AUTO_INCREMENT
,从1
开始,步长为1
;
6、外键约束:FOREIGN KEY
,A
表中的外键列。A
表中的外键列的值必须参照于B
表中的某一列(B
表主键)。
创建带注释的表
create table 表名称(id int comment '编号', name varchar(50) comment '姓名', age int comment '年龄', gender varchar(1) comment '性别') comment '用户表';
显示表信息
show create table 表名称;
更直观的显示表信息
desc 表名称;
更直观更详细的显示表信息
show full columns from 表名称;
增加表字段
alter table 表名称 add color CHAR(20);
增加表字段及注释
alter table 表名称 add nickname varchar(20) comment '昵称';
修改表字段的数据类型
alter table 表名称 modify name VARCHAR(12);
修改表字段的数据类型和字段名称
alter table 表名称 change name pname CHAR(18);
修改表字段的数据类型、字段名称和注释
alter table 表名称 change name pname CHAR(18) comment '姓名';
删除表字段
alter table 表名称 drop 字段名称;
修改表名
alter table 表名称 rename to 新表名称;
修改表的注释信息
alter table 表名称 comment '数据表';
删除表
drop table 表名称;
删除表前做校验
drop table if exists 表名称;