MySQL表的创建及字段介绍(小白入门篇)

 更新时间:2023年05月19日 09:25:52   作者:Hunter后端  
这篇文章主要为大家介绍了MySQL表的创建及字段介绍(小白入门篇),有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

引言

 这是MySQL系列笔记的第一篇,文章内容均为本人通过实践及查阅资料相关整理所得,可用作新手入门指南,或者个人知识点查阅。

库的下一级单位是表,表再往下是字段,所以这一篇笔记我们先介绍一下表字段,然后再介绍如何创建表的操作

  • 表字段介绍
  • 创建表
  • 查看表信息

1、表字段介绍

这里介绍几种常用的字段类型:

varchar

可变长字符,这个可变针对的是 MySQL 底层对该字段存储的长度是可变的

比如我们给某字段定义 varchar(100),当我们插入数据,给该字段传入 10个字符,或者100个字符都是可以的,MySQL 会根据给定字符串来存储长度

与之对应的是 char 这是定长字符,当我们定义 char(100),我们可以存储 10个字符,也可以存储100 个字符,但不管我们存多少, MySQL 在底层对这个字段都会给出 100 个字符长度存储

varchar 字节可存储范围为 0-65535,但实际上并不能真的存储这么长的字节数

如果字节长度不超过 255,则需要一个字节来存储长度,

如果长度超过255则额外需要两个字节来存储长度

还有一些其他的原因,导致 varchar 的最大存储长度是会小于 65535 的

int

整型,用于储存证书,四个字节,一个字节八位,所以存储的范围 -2 ^ (48 - 1) ~ 2 ^ (48 - 1) - 1,也就是 -2^31 ~ 2^31 - 1

datetime

日期时间,包括年月日时分秒的数据

text

文本字段,可以存储 65535 个字节到 64kb 的数据,记住一点,text 字段是个筐,啥都往里装。

2、创建表

以下是创建一张表的基本语法:

create table if not exists table_name(
 id int not null auto_increment primary key,
 name varchar(100) not null,
 num int default 0
);

在我们进入 MySQL 之后,use 一个 DATABASE 就可以运行上面的创建表的命令。

第一行有一个 if not exists,后面紧跟着将要创建的表名,表示如果不存在该表,则创建

第二行,id int not null 是表示创建的 id 字段不允许为 null,auto_increment 参数表示是自增,primary key 则表示是主键

第三行表示 name 字段为 varchar(100) 字符串类型,且长度最大为 100个字符长度,not null 表示该字段不允许为 null

第四行表示 num 字段为整型数据,且 default 是默认值为 0

3、查看表信息

我们可以通过 DESC 命令来查看一张表的基本信息:

DESC table_name;

大致会显示下面的内容:

+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| id    | int(11)      | NO   | PRI | NULL    | auto_increment |
| name  | varchar(100) | NO   |     | NULL    |                |
| num   | int(11)      | YES  |     | 0       |                |
+-------+--------------+------+-----+---------+----------------+
 

返回的就包含了这张表所有的信息

Field 这列表示的是字段名

Type 表示的是字段类型,比如 int, varchar 等

Null 表示是否允许为 Null 值,No 表示不允许为 Null

Key 表示该字段是否有一些约束信息,比如 主键 PRI,或者 唯一键 UNI

Default 表示该字段的默认值

Extra 这一行是一些额外的信息,比如 auto_increment 自增的属性

可以看到, DESC table_name 命令这条命令之后,将我们创建表的属性都展示了出来。

创建相同表

如果是想创建一张和某表一样表结构的表,可以用下面下面的命令获得创建表的语句:

show create table table_name;

然后就可以获得创建该表的 sql 语句,把创建的表名更改为需要新建的表名运行就可以了。

以上就是MySQL表的创建及字段介绍(小白入门篇)的详细内容,更多关于MySQL表创建表字段的资料请关注脚本之家其它相关文章!

相关文章

  • 在Linux系统安装MySql步骤截图详解

    在Linux系统安装MySql步骤截图详解

    本文给大家介绍的是linux系统下使用官方编译好的二进制文件进行安装MySql的安装过程和安装截屏,这种安装方式速度快,安装步骤简单。需要的朋友可以参考下在Linux系统安装MySql步骤截图详解
    2016-10-10
  • MySQL算术/比较/逻辑/位/运算符与正则举例详解

    MySQL算术/比较/逻辑/位/运算符与正则举例详解

    每种数据库都支持SQL语句,但是它们也都有各自支持的运算符,下面这篇文章主要给大家介绍了关于MySQL算术/比较/逻辑/位/运算符与正则的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • MySQL数据库中存储图片和读取图片的操作代码

    MySQL数据库中存储图片和读取图片的操作代码

    在MySQL数据库中存储图片通常有两种主要方式:将图片以二进制数据(BLOB 类型)直接存储在数据库中,或者将图片文件存储在服务器文件系统上,而在数据库中存储图片的路径或URL,以下是这两种方法的详细解释,包括存储和读取操作,需要的朋友可以参考下
    2024-11-11
  • 从入门到高阶实战详解如何使用MySQL做数据统计

    从入门到高阶实战详解如何使用MySQL做数据统计

    这篇文章主要为大家详细介绍了MySQL中统计分析的核心功能,包括基础聚合函数,分组统计,窗口函数(8.0+以及性能优化策略,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下
    2026-03-03
  • MySQL学习记录之KEY分区引发的血案

    MySQL学习记录之KEY分区引发的血案

    这篇文章主要给大家介绍了关于MySQL学习记录之KEY分区引发的血案的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • mysql导入sql文件出错的解决方法

    mysql导入sql文件出错的解决方法

    本文主要介绍了mysql导入sql文件出错的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • MySQL的id关联和索引使用的实际优化案例

    MySQL的id关联和索引使用的实际优化案例

    这篇文章主要介绍了MySQL的id关联实际优化案例,关联和索引一直是MySQL常见的可优化大块儿,需要的朋友可以参考下
    2015-05-05
  • mysql8关闭binlog并清空Binlog的方法

    mysql8关闭binlog并清空Binlog的方法

    这篇文章主要介绍了mysql8关闭binlog并清空Binlog,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-09-09
  • 可以改善mysql性能的InnoDB配置参数

    可以改善mysql性能的InnoDB配置参数

    MySQL与MSSQL 有一个区别在于MySQL建表的时候需要选择存储引擎,常用的存储引擎有MyISAM和InnoDB
    2011-05-05
  • Navicat连接本地MySql实现过程

    Navicat连接本地MySql实现过程

    文章介绍了在使用Navicat连接MySQL 8.0数据库时遇到连接测试失败的问题,并提供了解决方法,即将MySQL用户的加密规则修改为mysql_native_password,文章步骤清晰,适合初学者参考
    2026-03-03

最新评论