当前位置: 首页 > news >正文

Mysql1

语法: mysql -u用户名 -p密码 [-h数据库服务器IP地址 -P端口号]

MySQL数据库

关系型数据库:建立在关系模型基础上,由多张相互连接的二维表组成的数据

mysql数据类型

类型          大小              有符号的范围                     无符号的范围

tinyint           1                       -128-127                        0,255

smallint        2                  -32768,32767                      0,65535

mediumint    3                 -9388609,8388607              0,16777215

int                 4                -2147483648,2147483647       0,4294967295

bigint            8               -2^63  2^63-1                         0  2^64-1

float             4                  很大

double         8                 特别大                       

decimal          

字符串类型

类型              大小 (bytes)                           描述

char              0-255                                   定长字符串

varchar         0-65535                               变长字符串

tinyblob         0-255                                   不超过255个字符的二进制数据

tinytext          0-255                                    短文本字符串

blob               0-65535                              二进制形式的长文本数据

text               0-65535                               长文本数据

mediumblob         0-16777215bytes         二进制形式的中等长度文本数据

mediumtext      0-16777215                      中等长度文本数据

longblob         0-4294967295                    二进制形式的极大文本数据

longtext           0-4294967295                   极大文本数据

类型                        大小                        范围                              格式

data                         3             1000-01-01至9999-12-31           YYYY-MM-DD

time                         3              -838:59:59至838:59:59              HH:MM:SS

year                         1              1901至2155                               YYYY

datetime                  8               1000-01-01 00:00:00至9999-12-31 23:59:59   YYYY-MM-DD HH:MM:SS    

SQL:

DDL:  数据定义语言,用来定义数据库对象

DML:    数据操作语言,用来对数据库表中的数据进行增删改

DQL:    数据查询语言,用来查询数据库中表的记录

DCL     数据控制语言,用来创建数据库用户,控制数据库的访问权限

DDL-数据库

show databases;  查询所有数据库

select database(); 查询当前数据库

use 数据库名;使用/切换数据库

create database [if not exists] 数据库名[default charset utf8mb4];

drop database [if exists] 数据库名     删除数据库

上述语法中的database,也可以替换成schema

DDL-表结构-创建

create table tablename(

        字段1 字段类型[约束] [comment 字段1注释],

        .......

        字段2 字段类型[约束][comment 字段2注释]

)[comment 表注释]

create table user(id int comment 'ID,唯一标识',username varchar(50) comment '用户名',name varchar(10) comment '姓名',age int comment '年龄',gender char(1) comment '性别'
)comment  '用户信息表';

DDL-表结构-创建

非空约束             限制该字段值不能为null                                      not null

唯一约束             保证字段的所有数据都是唯一,不重复的           unique

主键约束             主键时一行数据的唯一标识,要求非空且唯一          primary key

默认约束             保存数据时,如果未指定该字段值,则采用默认值     default

外键约束             让两张表的数据建立连接,保证数据的一致性和完整性   foreign key

auto_increment 自动上升

DDL-表结构-查询,修改,删除

show tables;          --查询当前数据库的所有表

desc 表名;             --查询表结构

show create table 表面;  --查询建表语局

alter table 表名 add 字段名 类型(长度)[comment  注释][约束]; --添加字段

alter table 表名 modify 字段名 新数据类型;      ---修改字段类型

alter table 表名 change  旧字段名 新字段名 类型(长度)      [comment 注释][约束];--修改字段名和字段类型

alter table 表名 drop column 字段名;  --删除字段

alter table 表名 rename to 新表名;    --修改表名

drop table [if exists]表名;  --删除表

DML-insert

--指定字段添加数据

insert into 表名(字段1,字段2) values(值1,值2);

--全部字段添加数据

insert into 表名 values(值1,值2,...);

--批量添加数据(指定字段)

insert into 表名(字段名1,字段名2) values(值1,值2),(值1,值2);

--批量添加数据(全部字段)

insert into 表名 values(值1,值2,.....),(值1,值2,...);

1.插入数据时,指定的字段顺序需要与值的顺序时一一对应的。

2.字符串和日期型数据应该包含在引号中(单引号,双引号都可以)。

3.插入的数据大小/长度,应该在字段的规定范围内。

修改数据

update 表名 set 字段名1=值1,字段名2=值2,......[where 条件];

删除数据

delete from 表名[where]

DQL-基本查询

查询多个字段

select 字段1,字段2,字段3 from 表名

查询所有字段

select * from 表名

为查询字段设置别名,as关键字可以省略

select 字段1 [as 别名1], 字段2[as 别名2] from 表名

去除重复记录

select distinct 字段列表 form 表名

DQL-条件查询

select 字段列表 from 表名 where 条件列表

DQL-分组查询

count    统计数量

max      最大值

min       最小值

avg       平均值

sum      求和

所有的聚合函数不参与null值的统计

select 字段列表 from 表名 [where 条件列表] group by 分组字段名[having 分组后国旅条件]

执行顺序 where>聚合函数>having

DQL-排序查询

select 字段列表 from 表名 [where 条件列表][group by 分组字段名 having 分组后过滤条件]order by 排序字段 排序方式。

DQL-分页查询

select 字段 from表名[where 条件][group by 字段名 having 过滤条件][order by 排序字段]limit 起始索引,查询记录数

http://www.dtcms.com/a/312781.html

相关文章:

  • Docker-03.快速入门-部署MySQL
  • python的蛋糕店管理系统
  • MySQL的创建管理表:
  • 求根到叶子节点数字之和
  • 【数据分享】南京诗歌文学地理数据集(获取方式看文末)
  • 电机结构设计与特性曲线分析:基于MATLAB和FEMM的仿真研究
  • 6. 平台总线
  • 机器学习第四课之决策树
  • Shell 脚本流程控制语句详解(四):while 循环详解
  • lua table常用函数汇总
  • Django 序列化详解:从 Model 到 JSON,全面掌握数据转换机制
  • 使用AndroidStudio调试Framework源码
  • 腾讯人脸识别
  • 数据治理:DQC(Data Quality Center,数据质量中心)概述
  • [嵌入式embed]C51单片机STC-ISP提示:正在检测目标单片机
  • 《前端无障碍设计的深层逻辑与实践路径》
  • MyBatis动态SQL精要:从<if>到<foreach>的灵活拼接之道
  • 高质量数据集|建设三大难点
  • [硬件电路-140]:模拟电路 - 信号处理电路 - 锁定放大器概述、工作原理、常见芯片、管脚定义
  • [硬件电路-133]:模拟电路 - 信号处理电路 - 电荷放大器概述、工作原理、常见芯片、管脚定义
  • 深度学习(鱼书)day10--与学习相关的技巧(后两节)
  • 仿TCmalloc内存分配器
  • 后端研发转型爬虫实战:Scrapy 二开爬虫框架的避坑指南
  • C++入门自学Day5-- C/C++内存管理(续)
  • jvm之jconsole的使用
  • Maven 常用命令详解
  • react native中markdown添加数学公式的支持
  • 文明存续的时间博弈:论地球资源枯竭临界期的技术突围与行动紧迫性
  • STM32-驱动OLED显示屏使用SPI(软件模拟时序)实现
  • 【stm32】按键控制LED以及光敏传感器控制蜂鸣器