mysql概述

sql的定义:

sql(Structured Query Language):结构化查询语言

sql的分类:

DDL(Data Definition Language):

数据定义语言------定义对数据库对象(库,表,列,索引)的操作

DML(Data Manipulation Language):

数据操作语言 ------ 定义对数据库记录的操作(增删改查)

DCL(Data Control Language):

数据控制语言------ 定义对数据库、表、字段、用户访问权限和安全级别

sql的规范:

sql的注释:

官方注释:

1、多行注释:

sql 复制代码
/* 这里是注释 */

2、单行注释:

sql 复制代码
-- 这里是注释

MySQL的注释:

mysql 复制代码
#  这里是注释

数据库:

创建数据库:

mysql 复制代码
create database db_name [default charset=utf8mb4];
# 创建数据库并指定编码

删除数据库:

mysql 复制代码
drop database db_name ;

进入数据库:

mysql 复制代码
use db_name;
show tables;
# 查看当前数据库的所有表

表:

在关系型数据库中,所有的数据都是被保存在表中,表的表现为二位表格;

创建表格:

mysql 复制代码
create table 表名(
column1 type [约束条件],
column2 type [约束条件], 
......
)

以创建以下表格为例:

id name age address
mysql 复制代码
create table t_user(
id int,
name varchar (100),
age int ,
address varchar(255)
)

查询表结构:

mysql 复制代码
desc t_user;
describe t_user;

插入内容:

mysql 复制代码
insert into t_user values(1,"zs",18,"China");

其他配置:

查询数据库(表)创建的信息:

mysql 复制代码
show create database(table) db_test;
show create database db_test\G 
-- 互换行列(将表旋转90°)(末尾没有分号)

模糊查询:

mysql 复制代码
show databases like "db_%"
-- 以db开头的数据库

数据库的数据类型

数值型:

数据类型 描述
TINYINT(size) -128到127常规。0到255无符号"。在括号中规定最大位数。
SMALLINT(size) -32768到32767常规。0到65535无符号*。在括号中规定最大位数。
MEDIUMINT(Size) -8388608到8388607普通。0to16777215无符号"。在括号中规定最大位数。
INT(size) -2147483648到2147483647常规。0到4294967295无符号"。在括号中规定最大位数,
BIGINT(size) -9223372036854775808到9223372036854775807常规。0到18446744073709551615天符号。在括号中规定最大位数。
FLOAT(size,d) 带有浮动小数点的小数字。在括号中规定最大位数。在d参数中规定小数点右侧的最大位数。
DOUBLE(size,d) 带有浮动小数点的大数字,在括号中规定最大位数,在d参数中规定小数点右侧的最大位数。
DECIMAL(size,d) 作为字符串存储的 DOUBLE类型,允许固定的小数点,

字符串

数据类型 描述
CHAR(size) 保存固定长度的字符串(可包含字母、数字以及特殊字 符)。在括号中指定字符串的长度。最多 255 个字符。
VARCHAR(size) 保存可变长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的最大长度。最多 255个字符。注释:如果值的长度大于255,则被转换为TEXT类型
TINYTEXT 存放最大长度为 255 个字符的字符串。
TEXT 存放最大长度为 65,535 个字符的字符串。
BLOB 用于 BLOBs(Binary Large oBjects)。存放最多 65,535 字节的数据,
binary 存储较小的二进制数据
MEDIUMTEXT 存放最大长度为 16,777,215 个字符的字符串
MEDIUMBLOB 用于 BLOBs(Binary Large 0Bjects)。存放最多 16,777,215 字节的数据。
LONGTEXT 存放最大长度为 4,294,967,295 个字符的字符串。
LONGBLOB 用于 BLOBs(Binary Large 0Bjects)。存放最多 4,294,967,295 字节的数据。
ENUM(x,y,z,etc.) 允许你输入可能值的列表。可以在 ENUM 列表中列出最大65535个值。如果列表中不存在插入的值,则插入空值。注释:这些值是按照你输入的顺序存储的。可以按照此格式输入可能的值: ENUM('X'Y,Z')
SET 与 ENUM 类似,SET最多只能包含64个列表项,不过SET可存储一个以上的值。

时间和日期

数据类型 描述
DATE() 日期。格式:YYY-MM·DD注释:支持的范围是从'1000-01-01'到'9999-12-31'
DATETIME() 日期和时间的组合。格式:YYYY-MM-DDHH:MM:SS注释:支持的范围是'1000-01-0100:00:00'到9999-12-31 23:59:59'
TIMESTAMP() 时间戳。TIMESTAMP 值使用 Unix 纪元('1970-01-0100:00:00'UTC)至今的描述来存储。格式:YYY-MM-DD HH:MM:SS 注释:支持的范围是从"1970-01-0100:00:01'UTC到'2038-01-09 03:14:07'UTC
TIME() 时间。格式:HH:MM:SS注释:支持的范围是从'-838:59:59'到"838:59:59"
YEAR() 2位或4位格式的年。 注释:4位格式所允许的值:1901到2155。2位格式所允许的值:70到69,表示从1970到2069
相关推荐
0xDevNull33 分钟前
MySQL索引进阶用法
后端·mysql
0xDevNull43 分钟前
MySQL索引用法
mysql
IvorySQL2 小时前
PostgreSQL 技术日报 (3月6日)|为什么 Ctrl-C 在 psql 里让人不安?
数据库·postgresql·开源
NineData3 小时前
数据库管理工具NineData,一年进化成为数万+开发者的首选数据库工具?
运维·数据结构·数据库
程序员小崔日记7 小时前
一篇文章彻底搞懂 MySQL 和 Redis:原理、区别、项目用法全解析(建议收藏)
redis·mysql·项目实战
IvorySQL8 小时前
PostgreSQL 技术日报 (3月5日)|规划器控制力升级,内核能力再进阶
数据库·postgresql·开源
武子康8 小时前
大数据-241 离线数仓 - 实战:电商核心交易数据模型与 MySQL 源表设计(订单/商品/品类/店铺/支付)
大数据·后端·mysql
数据组小组1 天前
免费数据库管理工具深度横评:NineData 社区版、Bytebase 社区版、Archery,2026 年开发者该选哪个?
数据库·测试·数据库管理工具·数据复制·迁移工具·ninedata社区版·naivicat平替
用户8307196840821 天前
MySQL 查询优化 30 条封神技巧:用好索引,少耗资源,查询快到飞起
mysql