MySQL --- 表的操作

在对表进行操作时,需要先选定操作的表所在的数据库,即先执行

use 数据库名;

一、创建表

create table 表名(
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎 ;

说明:

  • field 表示列名
  • datatype 表示列的类型
  • character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

说明:不同的存储引擎(engine),创建表的文件不一样。不同引擎之间的区别在于适用于不同的场景(底层的存储方式有所差异)

顺便说明一下,创建数据库本质就是在/var/lib/mysql/这个目录下创建目录,而创建表就是在创建的数据库目录下创建特定的文件(db.opt这个文件里面存放当前数据库采用的选项有哪些,如字符集和校验集,t1.frm 和 t1.ibd 是我们创建 t1 表时产生的文件,采用不同的引擎产生的文件后缀和个数也不同,可以根据不同的场景选择不同的引擎)

二、查看表结构

desc 表名;

(表结构中的信息会在后面的章节中陆续介绍,这章主要介绍表的操作,就不多赘述了)

三、修改表

  • alter table 表名 add column datatype; // 增加新字段
  • alter table 表名 modify column datatype; // 修改字段的属性
  • alter table 表名 drop column; // 删除列,会删除这一列的所有数据
  • alter table 表名 change column column datatype; // 修改列名
  • alter table 表名 rename to 表名; // 修改表的名字
  • add
  • modify
  • drop
  • change
  • rename

四、删除表

  • drop table [if exists] 表名;
相关推荐
喜欢敲代码的程序员41 分钟前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:项目搭建(一)
spring boot·mysql·elementui·vue·mybatis
AI、少年郎1 小时前
Oracle 进阶语法实战:从多维分析到数据清洗的深度应用(第四课)
数据库·oracle
赤橙红的黄1 小时前
自定义线程池-实现任务0丢失的处理策略
数据库·spring
钢铁男儿1 小时前
C# 委托(调用带引用参数的委托)
java·mysql·c#
叁沐1 小时前
MySQL 02 日志系统:一条SQL更新语句是如何执行的?
mysql
DataGear1 小时前
如何在DataGear 5.4.1 中快速制作SQL服务端分页的数据表格看板
javascript·数据库·sql·信息可视化·数据分析·echarts·数据可视化
RunsenLIu2 小时前
基于Vue.js + Node.js + MySQL实现的图书销售管理系统
vue.js·mysql·node.js
码不停蹄的玄黓2 小时前
MySQL Undo Log 深度解析:事务回滚与MVCC的核心功臣
数据库·mysql·undo log·回滚日志
Qdgr_2 小时前
价值实证:数字化转型标杆案例深度解析
大数据·数据库·人工智能
数据狐(DataFox)2 小时前
SQL参数化查询:防注入与计划缓存的双重优势
数据库·sql·缓存