MySQL中表操作

创建表

语法:

示例:创建一个名字为student的学生表,表中包含两个字段,id表示编号,name表示名字,长度为50

sql 复制代码
create table student (
	id bigint,
    name varchar(50)
);

复制表结构

根据已有表(student)的结构,创建一个一模一样的新表(student1)

sql 复制代码
create table student1 like student;

查看当前数据库所有表

sql 复制代码
show tables;

在创建后可以查看所有的表,来看是否创建成功

查看表的结构

sql 复制代码
desc 表明

命令行客户端工具,只适合执行一些简单的查询或指令,如果说要编写一些复杂的SQL,比如表设计,复杂查询,建议使用可视化工具

在命令行中执行.sql文件

在编译器中把SQL编辑好,保存为一个本地.sql文件,输入source或者简写\.加上.sql文件的路径

创建表和创建数据库一样,也可以加入校验

sql 复制代码
create table if not exists test(id bigint);

如果保存在就是会生成以一个警告信息

删除表

总结

  1. show tables;查看当前数据库的所有表
  2. create table 表名(字段 数据类型 comment '注解'); 创建表
  3. desc 表名; 查看表结构
  4. drop table [if exists] 表名; 删除表

创建表实例

  • 创建⼀个store数据库,⽤来管理商店的商品、顾客和订单数据,这个数据库有以下三个表组成:

  • 商品表:表名为goods,表中包含的列如下:

    列名 类型 描述
    id bigint 商品编号
    name varchar(50) 商品名
    unitprice decimal(12, 2) 零售单价
    costprice decimal(12, 2) 成本价
    category varchar(20) 商品类型
    provider varchar(50) 供应商
  • 客户表:表名为customer,表中包含的列如下:

    列名 类型 描述
    id bigint 客⼾编号
    name varchar(20) 客⼾姓名
    gende bool 性别
    phone_num varchar(20) 电话号码
    email varchar(50) 电⼦邮件
    address varchar(255) 地址
    create_time datetime 注册时间
  • 购买记录表:表名为purchase,表中包含的列如下:

    列名 类型 描述
    order_id varchar(32) 订单编号
    customer_id bigint 客⼾编号
    goods_id bigint 商品编号
    nums int 购买商品数量
    amount decimal(12, 2) 总⾦额
    create_time datetime 订单⽣成时间
    sql 复制代码
    -- 商品表
    drop table if exists goods;
    create table goods(
    	id bigint comment '商品编号',
        name varchar(50) comment '商品名',
        unitprice decimal(12,2) comment '零售单价',
        costprice decimal(12,2) comment '成本价',
        category varchar(50) comment '供应商',
    );
    
    -- 客户表
    drop  table if exists customer;
    create table customer(
    	id bigint comment '客户编号',
        name varchar(20) comment '客户姓名',
        gender bool comment '性别',
        phone_num varchar(20) comment '电话号码',
        email varchar(20) comment '电子邮件',
        address varchar(255) comment '地址',
        create_time datetime comment '注册时间'
    );
    
    -- 购买记录表
    drop  table if exists purchase;
    create tabel purchase(
    	order_id varchar(32) comment '订单编号',
    	customer_id bigint comment '客户编号',
        goods_id bigint comment '商品编号',
        nums int comment '购买商品数量',
        amount decimal(12,2) comment '总金额',
        create_time datetime comment '订单生成时间'
    );
sql 复制代码
-- 老师表
drop table if exists teachars;
create table teachars(
	name varchar(20),
    age int,
    heighth int,
    weight int,
    gender bool,
    education varchar(20),
    birthday datetime,
    id varchar(20)
);

-- 图书表
CREATE TABLE books (
    book_name VARCHAR(200),    
    book_author VARCHAR(100),      
    book_price DECIMAL(8,2),        
    book_category VARCHAR(50) ,      
);
相关推荐
心态特好3 小时前
从缓存到分库分表:MySQL 高并发海量数据解决方案全解析
数据库·mysql·缓存
TDengine (老段)3 小时前
TDengine 数据函数 LEAST 用户手册
大数据·数据库·sql·时序数据库·tdengine
BD_Marathon3 小时前
【MySQL】管理
数据库·mysql
技术小黑屋_3 小时前
从零搭建 Android ADB MCP Server:让 AI 助手直接操控你的 Android 设备
android·adb
Go高并发架构_王工3 小时前
MySQL性能优化案例分析:从问题到解决方案
数据库·mysql·性能优化
2501_915921433 小时前
iOS混淆与IPA加固实战手记,如何构建苹果应用防反编译体系
android·macos·ios·小程序·uni-app·cocoa·iphone
别或许4 小时前
在centos系统下,安装MYSQL
linux·mysql·centos
丁丁丁梦涛4 小时前
CentOS修改MySQL数据目录后重启失败的问题及解决方案
linux·mysql·centos
Jeled4 小时前
Android 集成指南:Google 登录、Facebook 登录 与 Firebase 深入接入(实战)
android·kotlin·android studio·memcached·facebook