• MYSQL指令


    MYSQL指令

    MySQL指令

    数据库(文件夹),数据表(excel文件)

    数据库管理

    show databases;  # 查看已有的数据库
    create database <数据库名字>; # 创建数据库
    create database <数据库名字>; DEFAULT CHARSET utf8 COLLATE utf8_general_ci; # 以utf-8创建 
    drop database <数据库名字>; # 删除数据库
    use <数据库名字>; # 进入数据库
    show tables; # 查看数据库下的数据表
    

    数据表管理

    • 查看表
    use <数据库名字>; # 进入数据库
    show tables; # 查看数据库下的数据表
    
    • 创建表
    create table <表名称号>(
    	列名称,类型,
    	列名称,类型,
    	列名称,类型
    )default charset=utf8
    
    
    • 可以写一行
    create table tb1(id int, name varchar(16), age int)default charset=utf8;
    
    • 也可以分开写(直到分号才结束)
    create table tb2(
    id int, 
    name varchar(16), 
    age int
    )default charset=utf8;
    
    • 两种创建方式均可
      在这里插入图片描述

    • 此时show tables就可以看到创建的两张表了
      在这里插入图片描述

    • 不允许为空

    create table tb2(
    id int,
    name varchar(16) not null,  # 不允许此列为空 
    age int  null # 允许此列为空(默认)
    )default charset=utf8;
    
    
    • 插入时,写默认值
    create table tb2(
    id int, 
    name varchar(16), 
    age int default 18  # 插入数据时,age列的值默认为18
    )default charset=utf8;
    
    
    
    • 主键一般表示当前行的数据的编码
    create table tb2(
    id int primary key,  # 主键,不允许为空,不能重复 
    name varchar(16), 
    age int
    )default charset=utf8;
    
    • 内部维护,自增
    create table tb2(
    id int auto_increment primary key,  # 内部维护,自增 
    name varchar(16), 
    age int
    )default charset=utf8;
    
    • 一般创建不允许id为空
    create table tb2(
    id int not null auto_increment primary key,  
    name varchar(16), 
    age int
    )default charset=utf8;
    
    • 删除表
    drop table <表名称>;
    
    • 展示表格的属性
    desc <表名称>;
    

    在这里插入图片描述

    数据类型

    以下列举常用的数据类型,更多参考官方文档

    • tinyint

    有符号:取值范围:-128~127(有正负)默认
    无符号:取值范围:0~255(只有正)

    • 以下就是创建无符号的表
    create table tb2(
    id int not null auto_increment primary key,  
    age tinyint unsigned
    )default charset=utf8;
    
    • int

    int 有符号:取值范围:-2147483648~2147483647(有正负)默认
    int unsigned无符号:取值范围:0~4294967296(只有正)

    • bigint

    这个的范围比int还大的多

    • float
    • double
    • decimal

    准确的小数值,m是数字总个数(负号不算),d是小数点后放两位,m最大值为65,d最大值为30

    create table tb3(
    id int not null auto_increment primary key,  
    salary decimal(m,d)
    )default charset=utf8;
    
    • char,速度快

    定长字符串(固定用11个字符存储) ,最多可容纳255个字符

    create table tb4(
    id int not null auto_increment primary key,  
    moble char(11)
    )default charset=utf8;
    
    • varchar ,节省时间

    变长字符串,真实数据多长,就按照多长存储。最大根据编码最大字节/3

    create table tb5(
    id int not null auto_increment primary key,  
    moble varchar(11)
    )default charset=utf8;
    
    • text

    text数据类型用于保存变长的最大字符串,则可以多达六万多字符,mediumtext, longtext更多
    一般,长文本用text,

    • mediumtext

    • longtext

    • datatime

    YYYY-MM-DD HH:MM:SS

    • data

    YYYY-MM-DD

    数据行操作

    • 新增数据
    insert into 表名(列名,列名) values(,);
    
    • 删除数据
    delete from 表名;
    delete from 表名 where 条件;
    
    delete from usertable where id = 3;
    delete from usertable where id = 3 and name = "王";
    delete from usertable where id != 3;
    delete from usertable where id > 3;
    delete from usertable where id in (3,5); # 产出3和4
    
    • 修改数据
    update 表名 set=;
    update 表名 set=,=;
    update 表名 set=值 wherr 条件;
    
    • 查询数据
    select * from 表名称;
    select 列名称 from 表名称;
    select 列名称 from 表名称 where 条件;
    
    练习
    • 创建用户表
    create table usertable(
    	id int not null auto_increment primary key,  
    	name varchar(64) not null,
    	password char(64) not null,
    	email varchar(64) not null,
    	age tinyint,
    	salary decimal(10,2),
    	ctime datetime
    )default charset=utf8;
    
  • 相关阅读:
    数据查询优化技术方案
    研究报告:周界警戒AI算法+视频智能分析在安全生产场景中的应用
    一篇概全,接口测试知识盲扫,真正的接口测试是如何做的...
    Assigning a Static IP Address to a WSL2 Distribution
    5 个用于复古图像着色的开源 Python 工具
    企业运维容器之 docker 数据卷
    小程序源码:王者改名微信小程序源码下载另一版本支持流量主收益
    计算机专业毕业设计项目推荐04-物业管理系统(SpringBoot+原生Js+Mysql)
    使用https接口,无法调通接口响应不安全
    CIGS太阳能电池中的吸收
  • 原文地址:https://blog.csdn.net/qq_51670115/article/details/126920906